.windbeam-check{min-height:40px;display:flex;align-items:center}.windbeam-result-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.governing-label{margin-left:8px;color:var(--text-body);font-weight:600}.max-span{text-align:right}.max-span span{display:block;color:var(--text-muted);font-size:var(--font-size-sm)}.max-span strong{font-size:1.5rem;color:var(--gray-900)}.windbeam-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.result-metric dl{display:grid;grid-template-columns:1fr auto;gap:6px 10px;margin:0}.result-metric dt{color:var(--text-muted);font-weight:600}.result-metric dd{margin:0;font-weight:700}.windbeam-diagnostics{margin-top:12px;max-height:360px;overflow:auto;background:var(--gray-900, #212529);color:var(--gray-200, #dee2e6);border-radius:6px;padding:12px;font-size:var(--font-size-sm)}.section-series-select{font-size:var(--font-size-sm)}.section-filter-hint{margin-top:.2rem;line-height:1.25}.section-select-field select optgroup{font-weight:500;font-style:normal;color:var(--text-muted)}.section-series-heading{font-weight:500;color:var(--text-muted);letter-spacing:.01em}.span-geometry-support-hit.is-draggable{cursor:ew-resize}.windbeam-available-table{margin-bottom:0;font-size:var(--font-size-sm)}.windbeam-available-table th{color:var(--text-body);font-weight:700}@media (max-width: 991.98px){.windbeam-result-head,.windbeam-result-grid{grid-template-columns:1fr}.windbeam-result-head{align-items:flex-start;flex-direction:column}.max-span{text-align:left}}.windbeam-span-sections{display:grid;gap:var(--space-1, .25rem);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));max-height:16rem;overflow-y:auto;padding:var(--space-2, .5rem);border:1px solid var(--border-subtle, #d8d8d8);border-radius:var(--radius-sm, 4px)}.span-matrix{margin-bottom:1.5rem;max-width:100%;min-width:0}.span-matrix__brandbar{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;background:var(--green-700, #084830);color:#fff;border-radius:6px 6px 0 0}.span-matrix__logo{width:28px;height:28px;object-fit:contain}.span-matrix__title{font-weight:700;letter-spacing:.02em}.span-matrix__run-title{font-weight:600;font-size:var(--font-size-base, 1rem);letter-spacing:.01em;padding:.15rem .65rem;border-radius:4px;background:#ffffff24;white-space:nowrap}.span-matrix__subtitle{margin-left:auto;font-size:var(--font-size-xs, .75rem);opacity:.9}.span-matrix__groups{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:flex-start;max-width:100%;min-width:0}.span-matrix__group{display:block;flex:0 0 calc(50% - .625rem);min-width:min(100%,max-content);max-width:100%;margin-top:0}.span-matrix__table-scroll{max-width:100%;min-width:0;overflow-x:auto}.span-matrix__section-banner{flex:0 0 100%;margin-top:.85rem;padding:.4rem .75rem;background:var(--green-700, #084830);color:#fff;font-weight:700;font-size:var(--font-size-md, 1rem);letter-spacing:.02em;border-radius:4px}.span-matrix__group-label-variant{font-weight:600;color:var(--green-800, #004030);opacity:.85}.span-matrix__group-heading{margin:.5rem 0 .25rem;max-width:100%}.span-matrix__group-label{font-weight:600;color:var(--green-700, #084830);font-size:var(--font-size-sm, .875rem);line-height:1.35;max-width:100%}.span-matrix__group-scenario{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1rem .35rem;margin-top:.15rem;font-size:var(--font-size-sm, .875rem);color:var(--green-800, #004030);max-width:100%;line-height:1.4}.span-matrix__scenario-part{display:inline;white-space:nowrap}.span-matrix__scenario-sep{opacity:.65;margin:0 .1rem}.span-matrix__table{border-collapse:collapse;width:auto;font-size:var(--font-size-sm, .875rem)}.span-matrix__table th,.span-matrix__table td{border:1px solid var(--border-subtle, #d7dedb);padding:.3rem .55rem;text-align:center;white-space:nowrap}.span-matrix__table thead th{background:var(--green-100, #e1e9e6);color:var(--green-800, #004030);font-weight:600}.span-matrix__table thead .span-matrix__band-cell{background:var(--span-matrix-band-green-bg);color:var(--span-matrix-band-text);font-weight:600;letter-spacing:.02em;line-height:1.35;text-align:center;white-space:normal}.span-matrix__table thead .span-matrix__band-row--blue .span-matrix__band-cell{background:var(--span-matrix-band-blue-bg)}.span-matrix__table thead .span-matrix__band-row--orange .span-matrix__band-cell{background:var(--span-matrix-band-orange-bg)}.span-matrix__corner{text-align:left}.span-matrix__banner{text-align:center}.span-matrix__section{text-align:left;font-weight:600;background:var(--green-100, #e1e9e6)}.span-matrix__section--paired{vertical-align:middle}.span-matrix__row-label-heading,.span-matrix__row-label{width:1%;min-width:4.5rem}.span-matrix__row-label{text-align:left;color:var(--green-800, #004030);background:var(--green-50, #f3f7f5);font-size:var(--font-size-xs, .75rem);font-weight:600}.span-matrix__cell{position:relative;min-width:3.5rem}.span-matrix__cell[role=button]{cursor:pointer}.span-matrix__cell[role=button]:hover{background:var(--green-50, #f3f7f5)}.span-matrix__cell--selected{box-shadow:inset 0 0 0 2px var(--green-700, #084830);background:var(--green-50, #f3f7f5)}.span-matrix__cell--pass{color:var(--green-800, #004030);font-weight:600}.span-matrix__cell--clamp{color:var(--green-700, #084830);font-weight:700}.span-matrix__cell--blank{background:repeating-linear-gradient(45deg,#f4f6f5,#f4f6f5 4px,#eceeed 4px,#eceeed 8px);color:transparent}.span-matrix__cell--na{color:#9aa3a0}.span-matrix__cell--annotated{text-decoration:underline dotted;text-underline-offset:3px}.span-matrix__cell--annotated[role=button]{cursor:help}.span-matrix__published-notes{margin-top:var(--space-3, .75rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);border-top:1px solid var(--border-color);color:var(--text-muted);font-size:var(--font-size-xs, .75rem);line-height:1.45}.span-matrix__published-notes h3{margin:0 0 var(--space-2, .5rem);color:var(--text-heading);font-size:inherit;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.span-matrix__published-notes ol{margin:0;padding-left:1.25rem}.span-matrix__published-notes li+li{margin-top:var(--space-1, .25rem)}.span-matrix--review-open{margin-right:min(26rem,100%)}.span-matrix-review{position:fixed;top:0;right:0;bottom:0;z-index:1040;display:flex;flex-direction:column;width:min(100%,26rem);background:#fff;border-left:1px solid var(--border-subtle, #d7dedb);box-shadow:-8px 0 24px #0f172a1f}.span-matrix-review__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1rem .75rem;border-bottom:1px solid var(--border-subtle, #d7dedb);background:var(--green-100, #e1e9e6)}.span-matrix-review__eyebrow{font-size:var(--font-size-xs, .75rem);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green-700, #084830)}.span-matrix-review__title{margin:.15rem 0 0;font-size:var(--font-size-base, 1rem);color:var(--green-800, #004030)}.span-matrix-review__hint{margin:.35rem 0 0;font-size:var(--font-size-xs, .75rem);color:#51605b}.span-matrix-review__close{min-width:2rem;padding-inline:.45rem;line-height:1}.span-matrix-review__body{flex:1;overflow:auto;padding:.85rem 1rem}.span-matrix-review__actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:.85rem 1rem 1rem;border-top:1px solid var(--border-subtle, #d7dedb)}.span-matrix-review__context-product{font-weight:600;color:var(--green-800, #004030)}.span-matrix-review__context-scenario,.span-matrix-review__context-axis{margin-top:.2rem;font-size:var(--font-size-sm, .875rem);color:#51605b}.span-matrix-review__headline{margin:.85rem 0 .5rem;font-weight:700;color:var(--green-700, #084830)}.span-matrix-review__table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs, .75rem)}.span-matrix-review__table th,.span-matrix-review__table td{border:1px solid #e2e8e5;padding:.2rem .4rem;text-align:right;white-space:nowrap}.span-matrix-review__table th:first-child,.span-matrix-review__table td:first-child{text-align:left}.span-matrix-review__table .is-governing{background:var(--green-100, #e1e9e6);font-weight:600}.span-matrix-review__table .status-FAIL{color:var(--color-danger, #dc3545);font-weight:700}.span-matrix-review__annotation{margin:var(--space-2, .5rem) 0;padding:var(--space-2, .5rem) var(--space-3, .75rem);border-left:3px solid var(--green-700, #084830);background:var(--green-50, #f3f7f5);font-size:var(--font-size-sm, .875rem)}.span-matrix-review__meta{margin-top:.45rem;font-size:var(--font-size-xs, .75rem);color:#51605b}@media print{body *{visibility:hidden}#span-matrix-review-print,#span-matrix-review-print *{visibility:visible}#span-matrix-review-print{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;padding:1rem}.span-matrix-review__actions,.span-matrix-review__close,.span-matrix-review__hint{display:none!important}}.spanlink-web-app{font-family:var(--font-primary, system-ui, sans-serif)}.calc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--calc-field-cell-min-width, 9rem)),var(--calc-field-cell-max-width, 11.5rem)));gap:.65rem .85rem;justify-content:start}.calc-grid>*{min-width:0}.calc-grid .form-control,.calc-grid .form-select,.calc-grid .calc-input,.calc-grid .calc-field-with-button{width:100%}.calc-log{max-height:28rem;overflow:auto;font-size:var(--font-size-xs, .75rem);background:var(--gray-50, #f8f9fa);padding:1rem;border-radius:.25rem}.calc-collapse-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.5rem;padding:0;background:none;border:none;font-family:inherit;font-size:1rem;font-weight:var(--font-weight-semibold, 600);letter-spacing:.01em;color:var(--text-heading, #2c5282);cursor:pointer}.calc-collapse-toggle:hover{color:var(--iti-primary-dark, #1a365d)}.calc-collapse-caret{font-size:var(--font-size-xs);color:var(--text-muted)}.calc-collapse-caret--details:before{content:"▸"}details[open]>.calc-collapse-toggle .calc-collapse-caret--details:before{content:"▾"}.calc-section{margin-bottom:1.5rem;padding:var(--workspace-content-padding, 1rem);border:1px solid var(--sl-border, #dee2e6);border-radius:.375rem;background:var(--sl-surface, #fff)}.calc-section h6{margin-bottom:.75rem;font-size:1rem;font-weight:var(--font-weight-semibold, 600);color:var(--text-heading, #2c5282);letter-spacing:.01em}.calc-label{display:block;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500);color:var(--gray-700, #495057);margin-bottom:.25rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3, .75rem);flex-wrap:wrap;margin-bottom:var(--space-3, .75rem)}.page-header__title{margin:0;font-size:1.25rem;font-weight:var(--font-weight-bold, 700);color:var(--text-heading)}.page-header__sub{margin:.125rem 0 0;font-size:var(--font-size-sm, .875rem);color:var(--text-muted)}.page-header__actions{display:flex;gap:var(--space-2, .5rem)}.calc-label-units{font-weight:var(--font-weight-normal, 400);color:var(--text-muted)}:root{--calc-field-cell-min-width: 9rem;--calc-field-cell-max-width: 11.5rem}.calc-field-cell{max-width:var(--calc-field-cell-max-width);min-width:0;width:min(100%,var(--calc-field-cell-max-width))}.calc-field-cell .form-control,.calc-field-cell .form-select,.calc-field-cell .calc-field-with-button{width:100%}.calc-field-notes{grid-column:1 / -1;max-width:48rem}.calc-field-notes-list{margin:0;padding:0;list-style:none}.calc-field-notes-list+.calc-field-notes-list,.calc-field-note+.calc-field-note{margin-top:var(--space-1, .25rem)}.calc-field-note{font-size:var(--font-size-xs, .75rem);line-height:1.4;color:var(--text-muted)}.calc-field-note-label{font-weight:var(--font-weight-semibold, 600);color:var(--text-body)}.calc-radio-group{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .9rem;min-height:calc(1.5em + .5rem + 2px)}.calc-radio-group .calc-radio-option{display:inline-flex;align-items:center;gap:.35rem;margin:0;padding-left:0;cursor:pointer}.calc-radio-group .form-check-input{margin:0;flex-shrink:0;cursor:pointer}.calc-radio-group .form-check-label{font-size:var(--font-size-sm, .875rem);white-space:nowrap;cursor:pointer}.calc-field-cell:has(>.calc-radio-group),.calc-grid>.calc-field-cell:has(.calc-radio-group),.span-geometry-field-item--radio{max-width:none;width:auto}@media (min-width: 40rem){.calc-grid>.calc-field-cell:has(.calc-radio-group),.span-geometry-field-row>.span-geometry-field-item--radio{grid-column:span 2}}.calc-field-row{margin-bottom:.75rem;max-width:var(--calc-field-cell-max-width);width:min(100%,var(--calc-field-cell-max-width))}.calc-field-row .form-control,.calc-field-row .form-select,.calc-field-row .calc-field-with-button{width:100%}.calc-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.calc-results pre{white-space:pre-wrap;font-size:var(--font-size-xs, .75rem);max-height:480px;overflow:auto;background:#f8f9fa;padding:1rem;border-radius:.25rem}.calc-results-stale{opacity:.92}.calc-results-stale-message{font-size:.9375rem}.calc-output{margin-bottom:1.5rem;padding:1rem;border:1px solid var(--sl-border, #dee2e6);border-radius:.375rem;background:var(--sl-surface, #fff)}.span-table-slot-results{min-width:0}.span-table-progress{margin:1rem 0}.span-table-combination-estimate{margin-left:.25rem;white-space:nowrap}.param-col-hidden{display:none}.section-ply-row{display:flex;gap:.5rem;align-items:stretch;margin-bottom:.5rem}.section-ply-field{flex:0 0 4.25rem;min-width:4rem}.section-select-field{flex:1 1 auto;min-width:0}.section-groups-panel{max-height:420px;overflow-y:auto;border:1px solid #dee2e6;padding:.5rem;border-radius:.25rem}.unified-section-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.unified-section-selector-top{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem 2rem}.unified-section-selector-title{flex:0 0 auto;margin-bottom:0;white-space:nowrap;width:auto;max-width:none}.unified-section-selector-top .unified-section-toolbar{flex:1 1 auto;min-width:0;margin-left:0}.span-table-ply-control{flex:0 0 auto;min-width:0}.span-table-solve-for-control{flex:0 0 auto;min-width:0;margin:0;padding:0;border:0}.span-table-solve-for-control legend{float:none;width:auto}.unified-section-toolbar .span-geometry-section-bar{flex:0 1 auto;min-width:0;margin-bottom:0}.span-table-ply-control .editable-param-list,.span-table-ply-control .editable-param-list--compact-inline{margin-bottom:0}.span-table-floor-type-control{flex:0 0 auto;min-width:0;margin-left:auto}.span-table-floor-type-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.span-table-floor-type-row .calc-label{flex:0 0 auto;margin-bottom:0;white-space:nowrap}.span-table-floor-type-radios{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem}.span-table-floor-type-radios .form-check-label{font-size:var(--font-size-sm, .875rem);white-space:nowrap}.section-groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.4rem;align-items:start}.section-groups-list{display:flex;flex-direction:column;gap:.35rem}.unified-section-series-row{border:1px solid var(--sl-border, #dee2e6);border-radius:.25rem;background:var(--sl-surface, #fff);overflow:hidden}.unified-section-series-row--open{border-color:var(--iti-primary, #084830)}.unified-section-series-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;border:none;background:transparent;padding:.35rem .5rem;text-align:left;cursor:pointer;font-size:var(--font-size-sm, .875rem);font-weight:600;color:var(--text-body, #212529)}.unified-section-series-trigger:hover{background:var(--gray-50, #f8f9fa)}.unified-section-series-trigger--static{cursor:default}.section-tile-picker{border-top:1px solid var(--sl-border, #dee2e6);padding:.35rem .5rem .5rem;background:var(--gray-50, #f8f9fa)}.section-tile-picker-toolbar{display:flex;justify-content:flex-end;margin-bottom:.35rem}.section-tile-grid{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(4.25rem,1fr));gap:.3rem;-webkit-user-select:none;user-select:none;touch-action:none}.section-dimension-tile{border:1px solid var(--sl-border, #dee2e6);border-radius:.2rem;background:#fff;padding:.3rem .15rem;font-size:var(--font-size-xs, .75rem);font-weight:600;line-height:1.2;color:var(--text-body, #212529);cursor:pointer;text-align:center}.section-dimension-tile:hover{border-color:var(--iti-primary, #084830);color:var(--iti-primary, #084830)}.section-dimension-tile--selected{border-color:var(--iti-primary, #084830);background:var(--iti-primary, #084830);color:#fff}.section-dimension-tile--selected:hover{color:#fff;filter:brightness(.95)}.section-tile-marquee{position:absolute;pointer-events:none;border:1px dashed var(--iti-primary, #084830);background:#0848301f;z-index:2}.unified-section-group-tile{border:1px solid var(--sl-border, #dee2e6);border-radius:.25rem;padding:.25rem .4rem;min-width:0;background:var(--sl-surface, #fff)}.unified-section-group-tile--expanded{grid-column:1 / -1}.unified-section-group-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}.unified-section-group-tile .unified-section-group-header{margin-bottom:0}.unified-section-group-tile--expanded .unified-section-group-header{margin-bottom:.35rem}.unified-section-group-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr));gap:.1rem .75rem;margin-bottom:.35rem}.unified-section-row.form-check{margin-bottom:.15rem;min-width:0}.unified-section-row .form-check-label{font-size:var(--font-size-sm)}.unified-section-filter-row{display:flex;align-items:center;gap:.5rem}.unified-section-filter-row .calc-label{flex:0 0 auto;white-space:nowrap}.unified-section-filter-input{flex:1 1 auto;min-width:0;margin-bottom:0}.extension-panel{margin-top:1rem}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:.25rem;font-size:var(--font-size-xs, .75rem);font-weight:600}.status-pass{background:var(--surface-success-muted, #d1e7dd);color:var(--color-success-emphasis, #0f5132)}.status-fail{background:var(--surface-danger-muted, #f8d7da);color:var(--color-danger-emphasis, #842029)}.status-other{background:var(--gray-200, #dee2e6);color:var(--gray-700, #495057)}.editable-param-list{margin-bottom:.75rem}.editable-param-list--compact{margin-bottom:.65rem}.editable-param-compact-label-row{margin-bottom:.2rem}.editable-param-compact-label-row .calc-label{margin-bottom:0}.editable-param-compact-input-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.editable-param-compact-input-row>.calc-label{flex:0 0 auto;margin-bottom:0;white-space:nowrap}.editable-param-compact-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.editable-param-compact-controls-row>.calc-label{flex:0 0 auto;margin-bottom:0;white-space:nowrap}.editable-param-inline-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.editable-param-inline-label{flex:0 0 auto;margin-bottom:0;white-space:nowrap}.editable-param-list--compact .editable-param-chips{flex:1 1 100%;width:100%;margin-top:.3rem;margin-bottom:0;flex-wrap:wrap}.editable-param-list--compact-inline .editable-param-chips{flex:0 1 auto;width:auto;margin-top:0;margin-bottom:0;flex-wrap:wrap}.editable-param-list--compact .editable-param-add-row,.editable-param-list--compact-inline .editable-param-add-row{flex:0 0 auto;width:6.5rem;min-width:5.5rem;max-width:8rem;margin-bottom:0}.editable-param-list--compact .editable-param-add-row .form-control,.editable-param-list--compact-inline .editable-param-add-row .form-control{width:100%}.editable-param-list--compact .editable-param-suggestions,.editable-param-list--compact-inline .editable-param-suggestions{flex:0 1 auto;margin-bottom:0}.editable-param-list--compact .editable-param-compact-input-row .editable-param-suggestions,.editable-param-list--compact-inline .editable-param-compact-input-row .editable-param-suggestions{flex:0 1 auto}.editable-param-description{font-size:var(--font-size-xs);color:var(--text-muted);margin:0 0 .35rem}.editable-param-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.35rem}.editable-param-chip{position:relative;display:inline-flex;align-items:center;padding:.2rem .55rem;border:1px solid var(--green-700, #084830);border-radius:.25rem;background:var(--green-700, #084830);color:#fff;font-size:var(--font-size-sm);font-weight:600}.editable-param-chip:hover,.editable-param-chip:focus-within{padding-right:1.15rem}.editable-param-chip-label{border:none;background:none;padding:0;font:inherit;font-weight:inherit;color:inherit;cursor:pointer}.editable-param-chip-remove{position:absolute;top:-.3rem;right:-.3rem;display:inline-flex;align-items:center;justify-content:center;width:.95rem;height:.95rem;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:var(--green-800, #004030);padding:0;font-size:.62rem;line-height:1;color:#ffffffe6;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .12s ease}.editable-param-chip:hover .editable-param-chip-remove,.editable-param-chip:focus-within .editable-param-chip-remove,.editable-param-chip-remove:focus-visible{opacity:1;pointer-events:auto}.editable-param-chip-remove:hover{color:#fff;border-color:#fff;background:#0a3d28}.editable-param-chip-edit{min-width:4rem;width:auto;background:#fff;color:var(--text-body);border-color:#fff9}.editable-param-add-row{margin-bottom:.35rem}.editable-param-suggestions{display:flex;flex-wrap:wrap;gap:.35rem}.editable-param-suggestion{border:1px dashed var(--gray-300);background:transparent;border-radius:.25rem;padding:.1rem .4rem;font-size:var(--font-size-xs);color:var(--text-muted);cursor:pointer}.editable-param-suggestion:hover{border-color:var(--green-700, #084830);color:var(--green-700, #084830);background:var(--green-100, #e1e9e6)}.editable-param-warning{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium, 500);color:var(--color-warning-emphasis, #664d03);margin:.25rem 0 0}input.editable-param-input--warn{border-color:var(--color-warning, #ffc107);background-color:var(--surface-warning-muted, #fff3cd)}.editable-param-input--warn:focus{border-color:var(--color-warning, #ffc107);box-shadow:0 0 0 .2rem #ffc10740}.unified-section-group-header{display:flex;align-items:center;gap:.35rem}.unified-section-group-toggle{flex:1 1 auto;min-width:0;margin-bottom:0}.unified-section-group-action{flex:0 0 auto;border:none;background:none;padding:0 .25rem;font-size:var(--font-size-2xs);font-weight:600;color:var(--iti-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.unified-section-group-action:hover{color:var(--text-body)}.unified-section-group-count{font-size:var(--font-size-2xs);font-weight:600;color:var(--iti-primary);background:var(--gray-100);border-radius:.75rem;padding:0 .35rem;min-width:1.25rem;text-align:center}.unified-section-row--drag-select{-webkit-user-select:none;user-select:none;cursor:default;border-radius:.2rem}.unified-section-row--drag-select:hover{background:var(--gray-50)}.span-geometry-panel{min-height:0}.span-geometry-workspace{display:flex;flex-direction:column;min-height:0;min-width:0}.span-geometry-workspace-main{display:flex;flex-direction:column;min-width:0;min-height:0}.spanlink-design-workspace .span-geometry-panel{margin-bottom:1.5rem;border-left:none;border-right:none;border-radius:0;padding-top:.35rem}.design-workspace-center>.row{margin:0}.span-geometry-supplementary{margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-supplementary .calc-section{margin-bottom:0;padding:0;border:none;background:transparent}.span-geometry-header h6{margin-bottom:.25rem}.span-geometry-header--member{display:flex;align-items:center;justify-content:flex-start;gap:.75rem 1rem;flex-wrap:wrap;margin-bottom:.5rem;--member-header-control-h: 1.75rem;--member-header-control-fs: var(--font-size-sm, .875rem);--member-header-control-radius: .25rem}.span-geometry-header--section{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;flex-wrap:wrap;margin-bottom:.65rem;overflow:visible;--member-header-control-h: 1.75rem;--member-header-control-fs: var(--font-size-sm, .875rem);--member-header-control-radius: .25rem}.span-geometry-header--section .span-geometry-section-bar--inline{flex:1 1 auto;min-width:0}.span-geometry-section-notes{margin:-.35rem 0 .65rem}.span-geometry-section-current{flex:0 0 auto;margin-left:auto;padding:.125rem .5rem;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);font-variant-numeric:tabular-nums;color:var(--text-heading, #2c5282);white-space:nowrap}button.span-geometry-section-current{border:none;background:transparent;cursor:pointer;text-align:inherit;line-height:inherit}button.span-geometry-section-current:hover{text-decoration:underline;text-underline-offset:.12em}button.span-geometry-section-current:focus-visible{outline:2px solid var(--focus-ring, #084830);outline-offset:2px;border-radius:.2rem}.span-geometry-section-current--toolbar{box-sizing:border-box;margin-left:0;height:var(--member-header-control-h, 1.75rem);min-height:var(--member-header-control-h, 1.75rem);width:14ch;min-width:14ch;max-width:14ch;padding:0 .5rem;border:1px solid var(--border-color, #dee2e6);border-radius:var(--member-header-control-radius, .25rem);background:#fff;font-size:var(--member-header-control-fs, .875rem);line-height:1.2;overflow:hidden;text-overflow:ellipsis;text-align:center}button.span-geometry-section-current--toolbar:hover{border-color:var(--gray-400, #ced4da);text-decoration:none;background:var(--gray-50, #f8f9fa)}.span-geometry-section-dial-cluster{--section-dial-gutter: 1.9rem;position:relative;z-index:3;display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto;margin-left:.15rem;pointer-events:auto;overflow:visible}.span-geometry-section-dial-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.4rem;flex:0 0 auto}.span-geometry-section-dial-actions>.btn-primary{box-sizing:border-box;width:7.5rem;min-width:7.5rem;max-width:7.5rem}.span-geometry-section-result-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.35rem;margin-left:.45rem;flex:0 0 auto}.span-geometry-section-result-actions .btn{box-sizing:border-box;flex:0 0 auto;width:6.1rem;min-width:6.1rem;max-width:6.1rem}.span-geometry-section-dial-wrap{--section-dial-accent: #0696d7;position:relative;z-index:5;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding-inline:var(--section-dial-gutter);overflow:visible}.span-geometry-section-dial-zone{position:absolute;z-index:6;display:flex;align-items:center;justify-content:center}.span-geometry-section-dial-zone--left,.span-geometry-section-dial-zone--right{top:22%;bottom:22%;width:var(--section-dial-gutter)}.span-geometry-section-dial-zone--left{left:0}.span-geometry-section-dial-zone--right{right:0}.span-geometry-section-dial-chevron{display:block;width:.7rem;height:.76rem;fill:currentColor}.span-geometry-section-dial-btn{display:flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;border:none;border-radius:.2rem;background:#fff;color:#5c636e;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;opacity:1;pointer-events:auto;box-shadow:0 0 0 1px #20262d1a;transition:color .12s ease,background-color .12s ease}.span-geometry-section-dial-btn:hover:not(:disabled),.span-geometry-section-dial-btn:focus-visible:not(:disabled){color:var(--section-dial-accent);background:#0696d71f}.span-geometry-section-dial-btn:focus-visible{outline:1px solid var(--section-dial-accent);outline-offset:1px}.span-geometry-section-dial-btn:disabled{color:#c3c8d0;cursor:default;opacity:.45}.span-geometry-header-left{display:flex;align-items:center;gap:.35rem .75rem;flex:1 1 auto;min-width:0;flex-wrap:wrap}.span-geometry-header--member h6{margin-bottom:0;flex:0 0 auto}.span-geometry-header--member .app-breadcrumb{flex:0 1 auto;min-width:0;margin-left:0}.span-geometry-header--member .app-breadcrumb-path,.span-geometry-header--member .span-geometry-section-row,.span-geometry-header--section .span-geometry-section-row{gap:.375rem}.span-geometry-header--section .span-geometry-section-row{flex-wrap:nowrap}.span-geometry-header--member .btn-sm,.span-geometry-header--section .btn-sm{--bs-btn-padding-y: .125rem;--bs-btn-padding-x: .5rem;--bs-btn-font-size: var(--member-header-control-fs);--bs-btn-line-height: 1.25;--bs-btn-border-radius: var(--member-header-control-radius);height:var(--member-header-control-h);min-height:var(--member-header-control-h);display:inline-flex;align-items:center;justify-content:center;font-weight:var(--font-weight-normal, 400)}.span-geometry-header--member .form-select-sm,.span-geometry-header--member .form-control-sm,.span-geometry-header--section .form-select-sm,.span-geometry-header--section .form-control-sm{height:var(--member-header-control-h);min-height:var(--member-header-control-h);padding-top:.125rem;padding-bottom:.125rem;padding-left:.375rem;font-size:var(--member-header-control-fs);line-height:1.25;border-radius:var(--member-header-control-radius);font-weight:var(--font-weight-normal, 400)}.span-geometry-header--member .form-select-sm,.span-geometry-header--section .form-select-sm{padding-right:1.5rem;background-position:right .35rem center;background-size:10px 8px}.span-geometry-header--member .form-control-sm,.span-geometry-header--section .form-control-sm{padding-right:.375rem}.span-geometry-header--member .app-breadcrumb-item--active{font-weight:var(--font-weight-normal, 400)}.span-geometry-section-bar{margin-bottom:.65rem;padding:.55rem .75rem;background:#fff;border:1px solid var(--border-color, #dee2e6);border-radius:.375rem}.span-geometry-section-bar--inline{margin-bottom:0;padding:0;background:transparent;border:none;border-radius:0;flex:0 1 auto;min-width:0;overflow:visible}.span-geometry-section-bar--inline .span-geometry-section-row{justify-content:flex-start;overflow:visible}.span-geometry-section-bar--inline .section-smart-filter{flex:0 1 11rem;max-width:11rem}.span-geometry-section-row{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center}.span-geometry-section-row .section-series-select{flex:0 0 9.5rem;min-width:9.5rem;width:9.5rem;max-width:9.5rem;margin-bottom:0}.span-geometry-section-row .section-smart-filter{flex:1 1 8rem;min-width:7rem;max-width:14rem;margin-bottom:0}.span-geometry-section-ply{flex:0 0 4.5rem;min-width:4rem}.span-geometry-canvas{--span-geometry-canvas-toolbar-height: 1.875rem;border:1px solid var(--border-color, #dee2e6);border-radius:.375rem;background:var(--gray-50, #f8f9fa);overflow:hidden;flex:0 0 auto}.span-geometry-canvas-body{display:flex;align-items:stretch;min-height:0}.span-geometry-canvas-body--with-dock .span-geometry-canvas-main{flex:1 1 auto;width:auto;min-width:0;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.span-geometry-canvas-body--with-dock .span-geometry-available-dock{flex:0 0 var(--span-geometry-dock-width, 14rem);width:var(--span-geometry-dock-width, 14rem);max-width:var(--span-geometry-dock-width, 14rem);align-self:stretch;min-height:0;max-height:var(--span-geometry-canvas-height, 15rem);border:none;border-left:1px solid var(--border-color, #dee2e6);border-radius:0}.span-geometry-canvas-main{position:relative;flex:0 0 auto;width:100%;min-width:0;height:var(--span-geometry-canvas-height, 15rem);max-height:var(--span-geometry-canvas-height, 15rem);display:flex;flex-direction:column;overflow:hidden}.span-geometry-canvas-main--aspect{height:auto;aspect-ratio:var(--span-geometry-canvas-aspect, 480 / 320);min-height:var(--span-geometry-canvas-min-height, 200px);max-height:var(--span-geometry-canvas-height, 340px)}.span-geometry-canvas-toolbar,.span-geometry-canvas-footer{box-sizing:border-box;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;height:var(--span-geometry-canvas-toolbar-height);min-height:var(--span-geometry-canvas-toolbar-height);max-height:var(--span-geometry-canvas-toolbar-height);padding:0 .75rem;overflow:hidden;background:#fff}.span-geometry-canvas-toolbar{border-bottom:1px solid var(--border-color, #dee2e6)}.span-geometry-canvas-toolbar .beam-diagram-legend-row,.span-geometry-canvas-toolbar .beam-diagram-toolbar-legend,.span-geometry-canvas-footer .beam-diagram-legend-row,.span-geometry-canvas-footer .beam-diagram-toolbar-legend{flex-wrap:nowrap;min-width:0;overflow:hidden}.span-geometry-canvas-toolbar .beam-diagram-legend-text,.span-geometry-canvas-footer .beam-diagram-legend-text{overflow:hidden;text-overflow:ellipsis}.span-geometry-canvas-toolbar-actions{display:inline-flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.span-geometry-canvas-toolbar-spacer{flex:1 1 auto;align-self:stretch;min-width:0;min-height:100%}.span-geometry-canvas-resize{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;height:0;flex:0 0 auto;cursor:row-resize;touch-action:none;-webkit-user-select:none;user-select:none;background:transparent;border:none}.span-geometry-canvas-resize:before{content:"";position:absolute;left:0;right:0;top:-7px;height:14px;cursor:row-resize}.span-geometry-canvas-resize:focus-visible{outline:2px solid var(--focus-ring, #084830);outline-offset:2px}.span-geometry-canvas-resize-grip{position:absolute;top:-2px;width:2.5rem;height:.22rem;border-radius:999px;background:var(--gray-300, #ced4da);opacity:0}.span-geometry-canvas-resize:hover .span-geometry-canvas-resize-grip,.span-geometry-canvas-resize:focus-visible .span-geometry-canvas-resize-grip{opacity:1;background:var(--gray-500, #6c757d)}.span-geometry-canvas-footer{border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-available-dock{display:flex;flex-direction:column;min-height:0;background:#fff;overflow:hidden}.span-geometry-available-dock-header{display:flex;align-items:baseline;justify-content:space-between;gap:.35rem;padding:.45rem .5rem;border-bottom:1px solid #eef2f6;background:#fafbfc}.span-geometry-available-dock-title{font-size:var(--font-size-xs);font-weight:700;color:var(--text-heading, #2c5282)}.span-geometry-available-dock-empty{margin:0;padding:.5rem}.span-geometry-available-loading{display:flex;align-items:center;justify-content:center;padding:1rem .5rem;flex:1 1 auto;min-height:3rem}.span-geometry-available-dock-list{flex:1 1 auto;overflow-y:auto;padding:.25rem .35rem .35rem}.span-geometry-available-dock-row{display:flex;align-items:center;justify-content:space-between;gap:.25rem;width:100%;margin-bottom:.15rem;padding:.22rem .35rem;border:1px solid transparent;border-radius:.25rem;background:transparent;text-align:left;cursor:pointer}.span-geometry-available-dock-row:hover{border-color:#c9a66b;background:#c9a66b1f}.span-geometry-available-dock-label{font-size:var(--font-size-xs);color:var(--text-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.span-geometry-available-dock-defl{flex-shrink:0;font-size:.6875rem;font-variant-numeric:tabular-nums;color:var(--text-muted)}.span-geometry-field-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--calc-field-cell-min-width, 9rem)),var(--calc-field-cell-max-width, 11.5rem)));gap:.65rem .85rem;align-items:end;justify-content:start}.span-geometry-field-row--loads{margin-bottom:.65rem;padding:.55rem .75rem;background:var(--gray-50, #f8f9fa);border-radius:.375rem;border:1px solid var(--border-color, #dee2e6)}.span-geometry-field-row--design{margin-top:.65rem;margin-bottom:.35rem;padding:.55rem .75rem;background:#fff;border-radius:.375rem;border:1px solid var(--border-color, #dee2e6)}.span-geometry-field-item{min-width:0}.span-geometry-field-item .calc-label{font-size:var(--font-size-xs);margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.span-geometry-field-item .form-control-sm,.span-geometry-field-item .form-select-sm{width:100%}.span-geometry-overhang-toggle{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none}.span-geometry-overhang-toggle .form-check-input{margin:0}.span-geometry-empty{padding:2rem 1rem;text-align:center;background:var(--gray-50, #f8f9fa);border-radius:.375rem}.span-geometry-svg{width:100%;height:100%;flex:1 1 auto;min-height:0;display:block;background:transparent;-webkit-user-select:none;user-select:none;touch-action:none}.span-geometry-beam{stroke:#8b6b3d;stroke-width:1;cursor:pointer}.span-geometry-beam--timber:hover{fill:#e8c992;stroke:#7a5c32;stroke-width:1}.span-geometry-beam-grain{pointer-events:none}.span-geometry-restraint-edge{stroke:#6b7280;stroke-linecap:butt;pointer-events:none}.span-geometry-beam-label-group{cursor:pointer}.span-geometry-beam-label-hit{fill:transparent}.span-geometry-beam-label-group:hover .span-geometry-beam-label-hit{fill:#ffffff59}.span-geometry-beam-label{fill:#1e293b;font-size:14px;font-weight:600;text-anchor:middle;dominant-baseline:central;pointer-events:none}.span-geometry-beam-label-group:hover .span-geometry-beam-label{fill:#0f172a}.span-geometry-overhang-beam{fill:#e0be82;stroke:#8b6b3d;stroke-width:1;stroke-dasharray:5 3}.span-geometry-overhang-hit{fill:transparent;cursor:pointer}.span-geometry-overhang.is-selected .span-geometry-overhang-hit{fill:#4169e11a}.span-geometry-dimension--overhang text{fill:#4169e1;font-size:11px}.span-geometry-support-group{cursor:pointer}.span-geometry-support-group-hit,.span-geometry-support-hit{fill:transparent;pointer-events:all}.span-geometry-support-group.is-selected .span-geometry-support-hit{fill:#4169e11f}.span-geometry-support-group.is-selected .span-geometry-support{fill:#c5d4e8;stroke:#4169e1;stroke-width:2}.span-geometry-support-group.is-selected .span-geometry-support-frame,.span-geometry-support-group.is-selected .span-geometry-support-cap{stroke:#4169e1}.span-geometry-support{fill:#dce4ed;stroke:#2f4f73;stroke-width:1.5}.span-geometry-support-frame{stroke:#2f4f73;stroke-width:1}.span-geometry-support-cap{stroke:#2f4f73;stroke-width:2}.span-geometry-support-pin{fill:#fff;stroke:#2f4f73;stroke-width:2}.span-geometry-segment-hit{fill:transparent;cursor:pointer}.span-geometry-segment-hit:hover{fill:#8b691414}.span-geometry-segment-hit.is-selected{fill:#8b69141f}.span-geometry-handle-hit{fill:transparent;cursor:ew-resize}.span-geometry-dimension-row{pointer-events:all}.span-geometry-dimension-row-hit{fill:transparent;pointer-events:all}.span-geometry-dimension-row.is-selected .span-geometry-dimension text{fill:#4169e1;font-weight:600}.span-geometry-dimension{cursor:pointer}.span-geometry-dimension line{stroke:#666;stroke-width:1}.span-geometry-dimension text{fill:#333;font-size:12px;text-anchor:middle}.span-geometry-dimension.is-selected text{fill:#4169e1;font-weight:600}.span-geometry-inline-editor input{width:100%;text-align:center;font-size:12px;padding:2px 4px}.span-geometry-end-cap{cursor:pointer}.span-geometry-end-cap rect{fill:transparent;stroke:transparent;stroke-width:1;stroke-dasharray:4 3;transition:fill .15s ease,stroke .15s ease}.span-geometry-overhang:hover .span-geometry-end-cap rect,.span-geometry-end-cap:hover rect{fill:#4169e11f;stroke:#4169e1}.span-geometry-end-cap.is-selected rect{fill:#4169e133;stroke:#4169e1}.span-geometry-end-cap-icon{fill:#64748b;font-size:14px;font-weight:600;text-anchor:middle;pointer-events:none}.span-geometry-overhang:hover .span-geometry-end-cap-icon,.span-geometry-end-cap.is-selected .span-geometry-end-cap-icon{fill:#4169e1}.span-geometry-overhang.is-zero .span-geometry-overhang-hit{fill:transparent}.span-geometry-hover-control{opacity:0;transition:opacity .15s ease;pointer-events:none}.span-geometry-hover-zone:hover .span-geometry-hover-control,.span-geometry-hover-control:hover,.span-geometry-hover-control:focus-visible{opacity:1;pointer-events:all}.span-geometry-add-span-zone-hit{fill:transparent;pointer-events:all}.span-geometry-add-span{cursor:pointer}.span-geometry-add-span-hit{fill:#fff;stroke:#4169e1;stroke-width:1.5}.span-geometry-add-span-zone:hover .span-geometry-add-span-hit{fill:#4169e11a}.span-geometry-add-span-icon{fill:#4169e1;font-size:16px;font-weight:700;text-anchor:middle;pointer-events:none}.span-geometry-split-span{cursor:pointer}.span-geometry-split-span-hit{fill:#fff;stroke:#4169e1;stroke-width:1.5}.span-geometry-dimension-row:hover .span-geometry-split-span-hit{fill:#4169e11a}.span-geometry-split-span-icon{fill:#4169e1;font-size:14px;font-weight:700;text-anchor:middle;pointer-events:none}.span-geometry-remove-support{cursor:pointer}.span-geometry-remove-support-hit{fill:#fff;stroke:#dc3545;stroke-width:1.5}.span-geometry-support-group:hover .span-geometry-remove-support-hit{fill:#dc354514}.span-geometry-remove-support-icon{fill:#dc3545;font-size:16px;font-weight:700;text-anchor:middle;pointer-events:none}.span-geometry-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a73}.span-geometry-modal{width:min(100%,22rem);background:#fff;color:var(--gray-900, #212529);color-scheme:light;border-radius:.5rem;box-shadow:0 12px 32px #0f172a33;overflow:hidden}.span-geometry-modal--confirm{width:min(100%,26rem)}.span-geometry-modal-header{padding:.9rem 1rem .35rem}.span-geometry-modal-header h6{margin:0}.span-geometry-modal-subtitle{margin:.25rem 0 0;font-size:var(--font-size-xs)}.span-geometry-section-picker-families{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .75rem;margin:.65rem 0 0}.span-geometry-section-picker-family-tabs{display:flex;flex-wrap:wrap;gap:.35rem}.span-geometry-section-picker-multiply{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.span-geometry-section-picker-families--with-tabs.span-geometry-section-picker-families--with-multiply .span-geometry-section-picker-multiply{padding-left:.65rem;border-left:1px solid var(--border-color, #dee2e6)}.span-geometry-section-picker-multiply-prefix{font-size:var(--font-size-sm);font-weight:600;color:var(--text-muted);line-height:1}.span-geometry-section-picker-multiply-option{min-width:2rem}.span-geometry-modal-body{padding:.5rem 1rem .75rem}.span-geometry-modal-field+.span-geometry-modal-field{margin-top:.75rem}.span-geometry-modal-field .form-label{margin-bottom:.25rem;font-size:var(--font-size-sm);font-weight:600}.span-geometry-modal-field-hint{margin:.25rem 0 0;font-size:var(--font-size-xs, .75rem)}.span-geometry-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem 1rem;border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-modal-footer-actions{display:inline-flex;align-items:center;gap:.5rem;margin-left:auto}.span-geometry-pitch-cell{fill:#fff;stroke:#cbd5e1;stroke-width:1}.span-geometry-pitch-control.is-editing .span-geometry-pitch-cell{stroke:#4169e1;stroke-width:1.5}.span-geometry-pitch-label{fill:#64748b;font-size:10px;font-weight:600;text-anchor:middle}.span-geometry-pitch-arm{stroke:#334155;stroke-width:1.5;stroke-linecap:round}.span-geometry-pitch-arm--inclined{stroke:#4169e1}.span-geometry-pitch-arc{fill:none;stroke:#4169e1;stroke-width:1}.span-geometry-pitch-input-wrap{overflow:visible}.span-geometry-pitch-value{display:flex;align-items:center;justify-content:center;gap:.1rem;width:100%;height:100%;margin:0;padding:2px 4px;border:1px solid transparent;border-radius:.25rem;background:transparent;color:var(--text-body);font-size:13px;font-weight:600;line-height:1.2;cursor:pointer}.span-geometry-pitch-value:hover{border-color:var(--gray-300, #ced4da);background:var(--gray-50, #f8f9fa)}.span-geometry-pitch-control.is-editing .span-geometry-pitch-value{display:none}.span-geometry-pitch-unit{font-size:11px;font-weight:500;color:var(--text-muted)}.span-geometry-pitch-input{width:100%;text-align:center;font-size:12px;padding:2px 4px}.span-geometry-loads-footer{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-loads-advanced{border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-loads-advanced--inline{margin:0 0 .65rem;border-top:none}.span-geometry-loads-advanced--inline>.span-geometry-field-row--loads{margin-top:.5rem;margin-bottom:0}.span-geometry-loads-advanced-summary{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:var(--font-size-sm);font-weight:600;color:var(--text-muted);list-style:none;-webkit-user-select:none;user-select:none}.span-geometry-loads-advanced-summary::-webkit-details-marker{display:none}.span-geometry-loads-advanced-summary:before{content:"▸";display:inline-block;width:.75rem;color:var(--text-subtle, #adb5bd);transition:transform .15s ease}.span-geometry-loads-advanced[open]>.span-geometry-loads-advanced-summary:before{transform:rotate(90deg)}.span-geometry-loads-advanced-count{font-weight:500;font-size:var(--font-size-xs)}.span-geometry-loads-advanced-hint{margin:.5rem 0 .75rem}.span-geometry-loads-group+.span-geometry-loads-group{margin-top:.75rem}.span-geometry-loads-group-title{margin-bottom:.5rem;font-size:var(--font-size-sm);font-weight:600;color:var(--text-body)}.span-geometry-load-row{padding:.35rem .5rem;margin-bottom:.35rem;border-radius:.25rem;border:1px solid transparent;cursor:pointer}.span-geometry-load-row:hover{background:var(--gray-50, #f8f9fa)}.span-geometry-load-row.is-selected{border-color:var(--green-700, #084830);background:var(--green-50, #f0f4f3)}.span-geometry-beam-load-zone-hit{fill:transparent;cursor:crosshair;pointer-events:all}.span-geometry-add-load{cursor:pointer;pointer-events:none}.span-geometry-add-load-hit{fill:#fff;stroke:#c2410c;stroke-width:1.5}.span-geometry-beam-load-zone:hover .span-geometry-add-load-hit{fill:#ea580c1a}.span-geometry-add-load-label{fill:#c2410c;font-size:10px;font-weight:700;text-anchor:middle;pointer-events:none}.span-geometry-add-load-modal{width:min(100%,24rem);max-height:min(90vh,42rem);display:flex;flex-direction:column}.span-geometry-add-load-modal .span-geometry-modal-body{overflow-y:auto;min-height:0}.span-geometry-add-load-kind-toggle{display:inline-flex;flex-wrap:wrap;gap:.35rem}.span-geometry-add-load-preview{padding:0 1rem .35rem}.span-geometry-add-load-preview-svg{width:100%;height:48px;display:block;background:var(--gray-50, #f8f9fa);border-radius:.25rem}.span-geometry-add-load-preview-svg--interactive{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.span-geometry-add-load-preview-svg--interactive:active{cursor:grabbing}.span-geometry-add-load-preview-hit{fill:transparent}.span-geometry-add-load-position-field{margin-bottom:.75rem}.span-geometry-add-load-position-row{display:flex;align-items:center;gap:.5rem}.span-geometry-add-load-position-row .form-control{width:6.5rem;flex-shrink:0}.span-geometry-add-load-position-meters{font-size:var(--font-size-xs);white-space:nowrap}.span-geometry-add-load-position-slider{margin-top:.35rem}.span-geometry-add-load-position-dual{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.span-geometry-add-load-position-dual-col .form-label{margin-bottom:.25rem}.span-geometry-add-load-position-dual-col .form-control{width:100%}.span-geometry-add-load-dual-range{--range-start: 0%;--range-end: 0%;position:relative;height:1.5rem;margin-top:.65rem;display:flex;align-items:center}.span-geometry-add-load-dual-range-rail,.span-geometry-add-load-dual-range-fill{position:absolute;left:0;right:0;height:.35rem;border-radius:999px;pointer-events:none}.span-geometry-add-load-dual-range-rail{background:var(--gray-200, #e9ecef)}.span-geometry-add-load-dual-range-fill{left:var(--range-start);right:auto;width:calc(var(--range-end) - var(--range-start));background:var(--bs-primary, #0d6efd)}.span-geometry-add-load-dual-range-input{position:absolute;left:0;width:100%;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;pointer-events:none;height:1.5rem}.span-geometry-add-load-dual-range-input--start{z-index:3}.span-geometry-add-load-dual-range-input--end{z-index:4}.span-geometry-add-load-dual-range-input:active{z-index:5}.span-geometry-add-load-dual-range-input::-webkit-slider-runnable-track{height:.35rem;background:transparent}.span-geometry-add-load-dual-range-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:auto;width:1rem;height:1rem;margin-top:-.325rem;border-radius:50%;background:var(--bs-primary, #0d6efd);border:2px solid #fff;box-shadow:0 0 0 1px #0d6efd59;cursor:pointer}.span-geometry-add-load-dual-range-input::-moz-range-track{height:.35rem;background:transparent;border:none}.span-geometry-add-load-dual-range-input::-moz-range-thumb{pointer-events:auto;width:1rem;height:1rem;border-radius:50%;background:var(--bs-primary, #0d6efd);border:2px solid #fff;box-shadow:0 0 0 1px #0d6efd59;cursor:pointer}.span-geometry-add-load-preview-beam{stroke:#4a6fa5;stroke-width:4;stroke-linecap:round}.span-geometry-add-load-preview-band{fill:#fff;stroke:#64748b;stroke-width:1}.span-geometry-add-load-preview-marker{stroke:#c2410c;stroke-width:1.5;stroke-dasharray:3 2}.span-geometry-add-load-preview-dot{fill:#c2410c}.span-geometry-load{cursor:pointer}.span-geometry-load.is-dragging{cursor:grabbing;opacity:.88}.span-geometry-load-hit{fill:transparent;cursor:inherit}.span-geometry-load-arrow line,.span-geometry-load-arrow polygon{stroke:#c2410c;fill:#c2410c;stroke-width:1.5}.span-geometry-load-arrow--udl line,.span-geometry-load-arrow--udl polygon{stroke:#64748b;fill:#64748b}.span-geometry-load-arrow--member line,.span-geometry-load-arrow--member polygon{stroke:#7c3aed;fill:#7c3aed}.span-geometry-load-udl-band{fill:#fff;stroke:#64748b;stroke-width:1}.span-geometry-load-udl-tick{stroke:#64748b;stroke-width:1}.span-geometry-load-label{fill:#9a3412;font-size:10px;font-weight:600;text-anchor:middle}.span-geometry-load-label--udl{fill:#334155;font-size:9px;font-weight:600;dominant-baseline:middle}.span-geometry-load-label--member{fill:#6d28d9}.span-geometry-load-member-marker{fill:#ede9fe;stroke:#7c3aed;stroke-width:1.5}.span-geometry-load.is-selected .span-geometry-load-udl-band{fill:#fff;stroke:#1e293b;stroke-width:1.75}.span-geometry-load.is-selected .span-geometry-load-udl-tick{stroke:#1e293b}.span-geometry-load.is-selected .span-geometry-load-member-marker{fill:#ddd6fe;stroke-width:2}.span-geometry-load.is-selected .span-geometry-load-label{font-weight:700}.span-geometry-load-drag-hints{pointer-events:none}.span-geometry-load-drag-hints-bg{fill:#0f172ae0;stroke:#94a3b873;stroke-width:1}.span-geometry-load-drag-hints-text{fill:#f8fafc;font-size:9px;font-weight:500;text-anchor:middle}.span-geometry-status-badge{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:3.6rem;min-width:3.6rem;max-width:3.6rem;height:var(--member-header-control-h, 1.75rem);padding:.2rem .35rem;border-radius:.25rem;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.05em;line-height:1.2;pointer-events:none;-webkit-user-select:none;user-select:none}.span-geometry-status-badge.is-pass{background:var(--color-success, #198754);color:#fff}.span-geometry-status-badge.is-fail{background:var(--color-danger, #dc3545);color:#fff}.span-geometry-status-badge.is-pending{visibility:hidden}.beam-diagram-legend-row,.beam-diagram-toolbar-legend{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;min-width:0}.beam-diagram-toolbar-legend{flex:1 1 auto}.beam-diagram-legend-segment{display:inline-flex;align-items:center;gap:.3rem;cursor:default;white-space:nowrap;line-height:1.2}.beam-diagram-legend-segment:hover{background:var(--green-50, #f0f4f3);border-radius:.2rem}.beam-diagram-legend-indicator{display:inline-block;width:8px;height:8px;border-radius:2px;flex-shrink:0}.beam-diagram-legend-indicator.is-pass{background:var(--color-success, #198754)}.beam-diagram-legend-indicator.is-fail{background:var(--color-danger, #dc3545)}.beam-diagram-legend-indicator.is-empty{background:var(--gray-300, #ced4da)}.beam-diagram-legend-segment.is-placeholder{cursor:default;opacity:.7}.beam-diagram-legend-segment.is-placeholder:hover{background:transparent}.beam-diagram-legend-text{font-size:var(--font-size-2xs);font-weight:600;line-height:1.2;color:var(--text-body);font-variant-numeric:tabular-nums}.beam-diagram-legend-floating-tooltip{position:fixed;z-index:1100;transform:translate(-4px);pointer-events:none}.beam-diagram-legend-tooltip{display:inline-block;min-width:9rem;padding:.35rem .5rem;border:1px solid var(--gray-300, #ced4da);border-radius:.3rem;background:#fff;box-shadow:0 4px 12px #0f172a24;color:var(--text-body);font-size:10px;line-height:1.35;white-space:nowrap}.beam-diagram-legend-tooltip-title{margin-bottom:.15rem;font-size:10px;font-weight:700;color:var(--gray-900, #212529)}.beam-diagram-legend-tooltip-line{font-variant-numeric:tabular-nums}.span-geometry-available-float-tab{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .45rem;border:1px solid rgba(139,105,20,.35);border-radius:999px;background:#fffcf5d1;color:var(--text-body);font-size:var(--font-size-2xs);font-weight:600;line-height:1.2;cursor:pointer;box-shadow:0 2px 8px #0f172a14;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.span-geometry-available-float-tab:hover{background:#fffcf5f2;border-color:#8b691480}.span-geometry-available-float-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background:#8b691426;font-size:.625rem;font-variant-numeric:tabular-nums}.span-geometry-available-overlay{position:absolute;z-index:2;width:min(calc(100% - 1rem),13rem);max-height:7.5rem;overflow:hidden;display:flex;flex-direction:column;padding:.35rem .4rem;border:1px solid rgba(139,105,20,.3);border-radius:.375rem;background:#fffcf5eb;box-shadow:0 4px 14px #0f172a1a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.span-geometry-available-overlay-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-bottom:.2rem}.span-geometry-available-overlay-drag{cursor:grab;-webkit-user-select:none;user-select:none}.span-geometry-available-overlay-drag:active{cursor:grabbing}.span-geometry-available-overlay-header-actions{display:inline-flex;align-items:center;gap:.25rem}.span-geometry-available-overlay-close{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;border:none;border-radius:.2rem;background:transparent;color:var(--text-muted);font-size:.9rem;line-height:1;cursor:pointer}.span-geometry-available-overlay-close:hover{background:#0f172a0f;color:var(--text-body)}.span-geometry-available-overlay-title{font-size:var(--font-size-xs);font-weight:700;color:var(--text-heading, #2c5282)}.span-geometry-available-overlay-empty{margin:0;padding:.15rem 0}.span-geometry-available-overlay-list{overflow-y:auto;display:flex;flex-direction:column;gap:.15rem}.span-geometry-available-overlay-row{display:flex;align-items:center;justify-content:space-between;gap:.35rem;width:100%;padding:.2rem .35rem;border:1px solid transparent;border-radius:.25rem;background:transparent;text-align:left;cursor:pointer}.span-geometry-available-overlay-row:hover{border-color:#c9a66b;background:#c9a66b26}.span-geometry-available-overlay-label{font-size:var(--font-size-xs);color:var(--text-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.span-geometry-available-overlay-defl{flex-shrink:0;font-size:.6875rem;font-variant-numeric:tabular-nums;color:var(--text-muted)}.span-geometry-section-picker-modal{width:min(100%,28rem)}.span-geometry-section-picker-body{max-height:min(50vh,20rem);overflow-y:auto}.span-geometry-section-picker-group+.span-geometry-section-picker-group{margin-top:.75rem}.span-geometry-section-picker-series{margin-bottom:.35rem;font-size:var(--font-size-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.span-geometry-section-picker-sizes{display:flex;flex-wrap:wrap;gap:.35rem}.span-geometry-section-picker-size{min-width:4.5rem}.calc-field-with-button{display:flex;align-items:stretch;gap:.25rem}.calc-field-with-button>:first-child{flex:1 1 auto;min-width:0}.calc-field-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.9rem;padding:0;border:1px solid var(--gray-300, #ced4da);border-radius:.25rem;background:var(--gray-50, #f8f9fa);color:var(--text-body);cursor:pointer}.calc-field-button:hover{border-color:var(--green-700, #084830);color:var(--green-700, #084830);background:var(--green-50, #f0f4f3)}.calc-field-composition-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;padding:0;font-weight:700;line-height:1;border:1px solid var(--green-700, #084830);border-radius:.25rem;background:var(--green-50, #f0f4f3);color:var(--green-700, #084830);cursor:pointer}.calc-field-composition-badge:hover{background:var(--green-700, #084830);color:#fff}.load-calc-modal{width:min(100%,26rem);display:flex;flex-direction:column;max-height:min(90vh,40rem)}.load-calc-subtitle{margin-top:.15rem}.load-calc-body{overflow-y:auto}.load-calc-list{margin-top:.6rem;border:1px solid var(--border-color, #dee2e6);border-radius:.4rem;max-height:16rem;overflow-y:auto}.load-calc-row{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;border-bottom:1px solid var(--gray-100, #e9ecef)}.load-calc-row:last-child{border-bottom:none}.load-calc-row.is-active{background:var(--green-50, #f0f4f3)}.load-calc-qty{flex:0 0 3rem;width:3rem;text-align:center}.load-calc-row-text{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;line-height:1.2}.load-calc-row-desc{font-size:var(--font-size-sm);color:var(--text-body)}.load-calc-badge{margin-left:.35rem;padding:0 .3rem;border-radius:.6rem;font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.03em;background:#e0e7ff;color:#4338ca}.load-calc-row-brand{font-size:var(--font-size-xs)}.load-calc-row-kg{flex:0 0 auto;font-size:.75rem;font-variant-numeric:tabular-nums}.load-calc-remove{flex:0 0 auto;padding:0 .4rem;line-height:1.2}.load-calc-add-toggle{padding:.35rem 0;text-decoration:none}.load-calc-custom{margin-top:.5rem;padding:.5rem;border:1px dashed var(--gray-300, #ced4da);border-radius:.4rem;display:flex;flex-direction:column;gap:.4rem}.load-calc-custom-row{display:flex;gap:.4rem}.load-calc-custom-row>:first-child{flex:0 0 5rem}.load-calc-height{margin-top:.75rem}.load-calc-live-group+.load-calc-live-group{margin-top:.6rem}.load-calc-live-group-title{margin:0 0 .3rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.load-calc-live-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-bottom:.3rem;padding:.4rem .6rem;border:1px solid var(--border-color, #dee2e6);border-radius:.4rem;background:#fff;text-align:left;cursor:pointer}.load-calc-live-row:hover{border-color:var(--gray-300, #ced4da)}.load-calc-live-row.is-selected{border-color:var(--green-700, #084830);background:var(--green-50, #f0f4f3)}.load-calc-live-desc{font-size:var(--font-size-sm);color:var(--text-body)}.load-calc-live-vals{flex:0 0 auto;font-size:.75rem;font-variant-numeric:tabular-nums}.load-calc-result{font-size:var(--font-size-sm);color:var(--text-body)}.span-geometry-add-load-anchor{flex:0 0 auto}.span-geometry-add-load-anchor .btn{--bs-btn-padding-y: .15rem;--bs-btn-padding-x: .4rem;font-size:.72rem;white-space:nowrap}.span-geometry-add-load-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1060}.span-geometry-add-load-menu{position:fixed;display:flex;flex-direction:column;padding:.3rem;background:#fff;border:1px solid var(--border-color, #dee2e6);border-radius:.5rem;box-shadow:0 12px 32px #0f172a33}.span-geometry-add-load-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.4rem .55rem;border:1px solid transparent;border-radius:.35rem;background:transparent;text-align:left;cursor:pointer}.span-geometry-add-load-menu-item:hover,.span-geometry-add-load-menu-item:focus-visible{background:var(--green-50, #f0f4f3);outline:none}.span-geometry-add-load-menu-item-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-body)}.span-geometry-add-load-menu-item-hint{font-size:.72rem}.span-geometry-loads-panel{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #dee2e6)}.span-geometry-loads-group>.calc-collapse-toggle{margin-bottom:.5rem}.span-geometry-loads-group>.calc-collapse-toggle:not([aria-expanded=true]){margin-bottom:0}.span-geometry-loads-panel-hint{margin:0;font-size:var(--font-size-xs)}.span-geometry-loads-primary{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.6rem}.span-geometry-loads-primary-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;width:100%;padding:.3rem .5rem;border:1px solid transparent;border-radius:.25rem;background:var(--gray-50, #f8f9fa);text-align:left;cursor:default}button.span-geometry-loads-primary-row{cursor:pointer}button.span-geometry-loads-primary-row:hover{border-color:var(--gray-300, #ced4da)}.span-geometry-loads-primary-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-body)}.span-geometry-loads-primary-value{font-size:var(--font-size-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right}.span-geometry-load-card{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .55rem;margin-bottom:.35rem;border:1px solid var(--border-color, #dee2e6);border-radius:.35rem;background:#fff;cursor:pointer}.span-geometry-load-card:hover{border-color:var(--gray-300, #ced4da);background:var(--gray-50, #f8f9fa)}.span-geometry-load-card.is-selected{border-color:var(--green-700, #084830);background:var(--green-50, #f0f4f3)}.span-geometry-load-card-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.1rem}.span-geometry-load-card-head{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.span-geometry-load-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-body)}.span-geometry-load-card-preview,.span-geometry-load-card-extent{font-size:.75rem;color:var(--text-muted)}.span-geometry-load-card-warning{font-size:.75rem;color:#b45309}.span-geometry-load-card-actions{flex:0 0 auto;display:inline-flex;gap:.25rem}.span-geometry-loads-empty{margin:.25rem 0 .5rem;font-size:var(--font-size-xs)}.load-calc-presets{display:flex;flex-direction:column;gap:.35rem}.load-calc-preset-card{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .6rem;border:1px solid var(--border-color, #dee2e6);border-radius:.4rem;background:#fff;text-align:left;cursor:pointer}.load-calc-preset-card:hover,.load-calc-preset-card:focus-visible{border-color:var(--green-700, #084830);background:var(--green-50, #f0f4f3);outline:none}.load-calc-preset-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.load-calc-preset-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-body)}.load-calc-preset-kg{font-size:.75rem;font-variant-numeric:tabular-nums}.load-calc-preset-components{font-size:.72rem;line-height:1.3}.load-calc-search{margin-bottom:.5rem}.load-calc-breakdown{margin-top:.6rem;padding:.5rem .6rem;border:1px solid var(--border-color, #dee2e6);border-radius:.4rem;background:var(--gray-50, #f8f9fa)}.load-calc-reuse-chip{display:flex;align-items:baseline;gap:.4rem;width:100%;margin-bottom:.5rem;padding:.4rem .55rem;text-align:left;border:1px dashed var(--green-700, #084830);border-radius:.4rem;background:var(--green-50, #f0f4f3);color:var(--text-body);cursor:pointer}.load-calc-reuse-chip:hover,.load-calc-reuse-chip:focus-visible{background:var(--green-100, #e1e9e6)}.load-calc-reuse-chip-label{flex:0 0 auto;font-weight:600;font-size:var(--font-size-sm)}.load-calc-reuse-chip-summary{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);color:var(--text-muted, #6c757d)}.load-calc-reuse-chip-action{flex:0 0 auto;font-weight:600;font-size:var(--font-size-sm);color:var(--green-700, #084830)}.load-calc-breakdown-line,.load-calc-breakdown-total{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:var(--font-size-sm)}.load-calc-breakdown-line{padding:.1rem 0}.load-calc-breakdown-total{margin-top:.35rem;padding-top:.35rem;border-top:1px solid var(--gray-300, #ced4da);font-weight:600;font-variant-numeric:tabular-nums}body{min-height:100vh;display:flex;flex-direction:column}#root,.app-shell{flex:1;display:flex;flex-direction:column}.app-shell--minimal{min-height:100vh}html:has(.app-shell--header-chrome),body:has(.app-shell--header-chrome),#root:has(.app-shell--header-chrome){height:100%;max-height:100vh;overflow:hidden}.app-shell--header-chrome{height:100vh;max-height:100vh;min-height:0;overflow:hidden}.app-main--header-chrome{flex:1 1 0;min-width:0;min-height:0;max-width:none;padding:0;overflow:hidden}.app-main--header-chrome #spanlink-plans-root{height:100%;min-height:0;overflow:hidden}.app-main--header-chrome .sl-plans-app,.app-main--header-chrome #spanlink-reference-import-root,.app-main--header-chrome .reference-import-page,.app-main--header-chrome .ri-container{height:100%;max-height:100%;min-height:0}.app-main{flex:1}.home-launcher{display:flex;align-items:flex-start;gap:1.5rem}.home-section-nav{flex:0 0 12.5rem;width:12.5rem;position:sticky;top:1rem}.home-section-nav__list{gap:.35rem}.home-section-nav__list .nav-link{text-align:left;font-weight:var(--font-weight-semibold, 600);color:var(--iti-primary, var(--green-700, #084830));border-radius:999px;padding:.45rem .85rem}.home-section-nav__list .nav-link:hover,.home-section-nav__list .nav-link:focus{color:var(--iti-primary, var(--green-700, #084830));background:var(--iti-primary-soft, var(--green-100, #e1e9e6))}.home-section-nav__list .nav-link.active{color:#fff;background:var(--iti-primary, var(--green-700, #084830))}.home-launcher__content{flex:1 1 auto;min-width:0}.home-add-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:2.25rem;height:2.25rem;padding:0;flex:0 0 auto;border:1px solid var(--green-300, #97b2a8);border-radius:.3rem;background:transparent;color:var(--iti-primary, var(--green-700, #084830));text-decoration:none;line-height:1;cursor:pointer}.home-add-btn:hover,.home-add-btn:focus-visible{border-color:var(--iti-primary, var(--green-700, #084830));background:var(--iti-primary-soft, var(--green-100, #e1e9e6));color:var(--iti-primary, var(--green-700, #084830))}.home-add-btn:focus-visible{outline:2px solid var(--focus-ring, var(--green-700, #084830));outline-offset:2px}.home-add-btn:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 575.98px){.home-launcher{flex-direction:column}.home-section-nav{width:100%;position:static}}.app-header{position:sticky;top:0;z-index:1020;background:var(--surface-chrome, var(--green-800, #004030));box-shadow:inset 0 1px #ffffff14,0 1px #00000047,0 10px 24px #04281a52}.app-header .navbar{padding-left:0;padding-right:0}.app-navbar{--bs-navbar-color: var(--green-100, #e1e9e6);--bs-navbar-hover-color: #fff;--bs-navbar-active-color: #fff;--bs-navbar-brand-color: var(--green-50, #f0f4f3);--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(240, 244, 243, .28);background:var(--surface-chrome, var(--green-800, #004030));border-bottom:1px solid rgba(0,0,0,.35);color:var(--green-50, #f0f4f3);color-scheme:dark}.app-navbar .navbar-brand{display:inline-flex;align-items:center;gap:.5rem;color:var(--green-50, #f0f4f3)!important}.app-navbar .navbar-brand:hover,.app-navbar .navbar-brand:focus{color:#fff!important}.app-brand-mark{display:block;width:2.25rem;height:2.25rem;object-fit:contain;flex-shrink:0}.navbar-brand__wordmark{font-weight:700;letter-spacing:.01em;white-space:nowrap}.app-navbar .nav-link{color:var(--green-100, #e1e9e6)}.app-navbar .nav-link:hover,.app-navbar .nav-link:focus,.app-navbar .nav-link:focus-visible{color:#fff}.app-navbar .navbar-toggler{border-color:#f0f4f347}.app-navbar .navbar-collapse{padding-right:.75rem}.app-navbar .dropdown-menu{color-scheme:light}.app-navbar .navbar-nav .dropdown-menu{right:0;left:auto}.app-navbar-row{align-items:center;max-width:100%;padding-left:0;padding-right:0}.app-navbar-brand-group{display:flex;align-items:center;gap:var(--space-3, .75rem);min-width:0;flex:0 1 auto}.app-navbar-brand-group .navbar-brand{margin-right:0;flex-shrink:0;padding-left:.75rem}.app-navbar-workspace-tools{display:inline-flex;align-items:center;gap:.15rem;flex-shrink:0}.app-navbar-member-bar{display:flex;align-items:center;gap:var(--space-2, .5rem);min-width:0;flex:1 1 auto;overflow:hidden;padding:.25rem;margin:-.25rem}.app-navbar-member-type{flex:0 0 auto;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);color:var(--green-50, #f0f4f3);text-decoration:none;white-space:nowrap}.app-navbar-member-type:hover{color:#fff;text-decoration:underline}.app-navbar-member-bar .app-breadcrumb{min-width:0;flex:1 1 auto}.app-navbar-member-bar .app-breadcrumb-path{flex-wrap:nowrap}.app-header .navbar>.container-fluid.app-navbar-row.app-navbar-row--project-workspace{display:flex;flex-wrap:nowrap;align-items:center;justify-content:stretch}.app-navbar-brand-group--workspace{display:flex;align-items:center;gap:var(--space-2, .5rem);min-width:0;flex:0 0 auto;padding-left:.75rem;padding-right:var(--space-3, .75rem)}.app-navbar-brand-group--workspace .navbar-brand{padding-left:0;min-width:0}.app-navbar-workspace-main{display:flex;align-items:center;min-width:0;flex:1 1 auto}.app-navbar-workspace-main .app-navbar-member-bar{flex:1 1 auto;min-width:0}.app-navbar-wind-class-value{white-space:nowrap}.app-navbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid transparent;border-radius:.3rem;background:transparent;color:var(--green-200, #bfcfc9);text-decoration:none;cursor:pointer}.app-navbar-icon-btn:hover,.app-navbar-icon-btn:focus-visible{border-color:#f0f4f338;background:#f0f4f31a;color:var(--green-50, #f0f4f3)}.app-navbar-wind-class{display:flex;align-items:center;gap:.35rem;padding-right:.5rem}.app-navbar-wind-class-label{margin:0;font-size:var(--font-size-sm);color:var(--green-200, #bfcfc9);white-space:nowrap}.app-navbar-wind-class-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold, 600);color:var(--green-50, #f0f4f3)}.app-breadcrumb{min-width:0}.app-navbar .app-breadcrumb-path{color:var(--green-200, #bfcfc9)}.app-navbar .app-breadcrumb-item a{color:var(--green-50, #f0f4f3)}.app-navbar .app-breadcrumb-item a:hover{color:#fff}.app-navbar .app-breadcrumb-item--active{color:var(--green-50, #f0f4f3)}.app-navbar .app-breadcrumb-sep{color:var(--green-300, #97b2a8)}.app-navbar .app-breadcrumb-status--slot{color:var(--green-200, #bfcfc9)}.app-navbar .app-breadcrumb-status--error{color:#ea868f}.app-navbar :is(button,a,input,select):focus-visible{outline:2px solid var(--focus-ring-on-dark, #fff);outline-offset:1px}.app-breadcrumb-path{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;padding:0;list-style:none;font-size:var(--font-size-sm);color:var(--gray-600)}.app-breadcrumb-item a{color:var(--iti-primary);text-decoration:none}.app-breadcrumb-item a:hover{color:var(--iti-primary-dark);text-decoration:underline}.app-breadcrumb-item--active{color:var(--gray-800);font-weight:var(--font-weight-semibold)}.app-breadcrumb--member-bar .app-breadcrumb-path{font-size:var(--font-size-sm)}.app-breadcrumb-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal)}.app-breadcrumb-status--slot{display:inline-block;flex:0 0 4.5rem;width:4.5rem;min-width:4.5rem;height:1.125rem;line-height:1.125rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle}.app-breadcrumb-status--error{color:var(--color-danger, #dc3545)}.app-breadcrumb-sep{color:var(--gray-400);-webkit-user-select:none;user-select:none}.app-main--chrome{padding-top:1.5rem;padding-bottom:1.5rem}.app-main--chrome:has(.spanlink-design-workspace),.app-main--chrome:has(.project-workspace),.app-main--chrome:has(.spanlink-span-table-workspace){max-width:100%;padding-left:0;padding-right:0;padding-top:0}.app-footer{margin-top:auto;font-family:Mulish,sans-serif;background:var(--gray-700, #495057);color:var(--gray-200, #dee2e6);padding:.85rem 1.25rem;border-top:1px solid rgba(0,0,0,.35);box-shadow:inset 0 1px #ffffff14;color-scheme:dark}.app-footer__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem 1.5rem;max-width:100%}.app-footer__brand{justify-self:start;font-family:Libre Baskerville,Times New Roman,Times,serif;font-style:normal;font-weight:700;font-size:1.125rem;letter-spacing:.01em;line-height:1.2;margin:0;color:var(--gray-50, #f8f9fa)}.app-footer__tagline{margin:0;justify-self:center;text-align:center;font-style:italic;font-weight:600;font-size:1rem;letter-spacing:.04em;text-transform:none;color:var(--gray-50, #f8f9fa)}.app-footer__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;justify-self:end}.app-footer__link{color:var(--gray-100, #e9ecef);font-size:var(--font-size-sm, .875rem);font-weight:600;letter-spacing:.02em;text-decoration:none}.app-footer__link:hover,.app-footer__link:focus-visible{color:#fff;text-decoration:underline}.app-footer__copy{font-size:var(--font-size-xs, .75rem);color:var(--gray-400, #adb5bd)}@media (max-width: 767.98px){.app-footer__inner{grid-template-columns:1fr;justify-items:center;text-align:center}.app-footer__brand,.app-footer__tagline,.app-footer__meta{justify-self:center}.app-footer__meta{align-items:center}}.calc-trace{border-left:3px solid var(--sl-border-color, #dee2e6);padding:.25rem 0 .25rem .75rem;margin:.25rem 0 .25rem .25rem}.calc-trace-step{break-inside:avoid}.calc-trace-label{font-size:.78rem;font-weight:600;color:#495057}.calc-trace-math{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.75rem;row-gap:.15rem;font-size:.9rem;overflow-x:auto}.calc-trace-value{font-weight:600;white-space:nowrap}.calc-trace-tr>td{box-shadow:none}@media print{#rectification-comps{max-width:100%}#rectification-comps .table{break-inside:auto}#rectification-comps .table tr{break-inside:avoid}#rectification-comps h6{break-after:avoid}.calc-trace{border-left-color:#adb5bd}}.comps-titleblock{border-bottom:3px solid var(--green-700, #084830);padding-bottom:.5rem}.comps-endrule{border-top:2px solid var(--green-700, #084830)}@media print{@page{size:A4;margin:12mm}#rectification-comps svg,#rectification-comps .comps-titleblock,#rectification-comps .js-plotly-plot{break-inside:avoid}#rectification-comps thead{display:table-header-group}#rectification-comps a[href]:after{content:""}}#member-comps{max-width:960px;font-size:.875rem}#member-comps .report-page{border-bottom:1px dashed var(--gray-300, #ced4da);padding-bottom:1rem;margin-bottom:1.25rem}#member-comps .report-h{color:var(--green-700, #084830);font-weight:700;margin:1rem 0 .4rem}#member-comps h4.report-h{border-bottom:2px solid var(--green-700, #084830);padding-bottom:.25rem}#member-comps .report-minihead{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--green-700, #084830);margin-bottom:.25rem}#member-comps .report-table{font-size:.8rem;margin-bottom:.75rem}#member-comps .report-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--gray-700, #495057);border-bottom-width:2px}#member-comps .report-kv td:first-child{color:var(--text-muted, #6c757d);width:38%}#member-comps .report-symbol{font-family:"Cambria Math",Cambria,Georgia,serif;font-style:italic;white-space:nowrap;width:3.5rem}#member-comps .report-ref{font-size:.72rem;color:var(--text-muted, #6c757d);white-space:nowrap}#member-comps .report-eqrow{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;background:var(--green-50, #f0f4f3);border-left:3px solid var(--green-700, #084830);padding:.3rem .6rem;margin-bottom:.25rem}#member-comps .report-eq{font-family:"Cambria Math",Cambria,Georgia,serif;font-size:.9rem}#member-comps .report-util{position:relative;background:var(--gray-200, #dee2e6);border-radius:2px;height:14px;min-width:90px;overflow:hidden}#member-comps .report-util-bar{height:100%;background:var(--color-success, #198754)}#member-comps .report-util-bar.report-util-over{background:var(--color-danger, #dc3545)}#member-comps .report-util-label{position:absolute;top:0;right:0;bottom:0;left:0;font-size:.68rem;line-height:14px;text-align:center;color:var(--gray-900, #212529);text-shadow:0 0 2px rgba(255,255,255,.8)}#member-comps .report-util-col{width:110px}#member-comps .report-combo{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem}#member-comps .report-loads-block .report-table{margin-bottom:.25rem}#member-comps .report-composition{margin-bottom:.4rem}#member-comps .report-composition-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:.85rem}#member-comps .report-composition-field{font-weight:600}#member-comps .report-composition-value{font-variant-numeric:tabular-nums}#member-comps .report-composition-total td{border-top:1px solid var(--gray-300, #ced4da);font-weight:600}#member-comps .report-basis{border-top:1px solid var(--border-color, #dee2e6);margin-top:.5rem;padding-top:.4rem}#member-comps .report-appendix summary{cursor:pointer}#member-comps .report-log{font-family:Consolas,Courier New,monospace;font-size:.7rem;line-height:1.4;background:var(--gray-50, #f8f9fa);border:1px solid var(--border-color, #dee2e6);border-radius:.25rem;padding:.75rem;white-space:pre-wrap;word-break:break-word}@media print{#member-comps{max-width:100%;font-size:9.5pt}#member-comps .report-page{border-bottom:none;break-after:page}#member-comps .report-table,#member-comps .comps-titleblock,#member-comps .report-eqrow{break-inside:avoid-page}#member-comps .report-table tr{break-inside:avoid}#member-comps thead{display:table-header-group}#member-comps .report-h{break-after:avoid}#member-comps a[href]:after{content:""}}:root{--project-sidebar-width: 16rem;--design-ai-assist-width: 17rem;--workspace-content-padding: 1rem}.app-shell[data-sidebar-collapsed=true],.project-workspace--sidebar-collapsed{--project-sidebar-width: 0}.project-workspace{display:flex;flex-direction:column;gap:var(--space-3, .75rem);flex:1 1 auto;min-height:100%}.project-bar{border:1px solid var(--border-color, #d8dde3);border-radius:.5rem;background:var(--surface-white, #fff);padding:var(--space-2, .5rem) var(--space-3, .75rem)}.project-bar__row{display:flex;align-items:center;gap:var(--space-2, .5rem);flex-wrap:wrap}.project-bar__label{font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);color:var(--gray-700, #495057);margin:0}.project-bar__select{border:1px solid var(--border-color, #d8dde3);border-radius:.375rem;padding:.25rem .5rem;background:var(--surface-white, #fff);min-width:12rem}.project-bar__meta{font-size:var(--font-size-sm, .875rem);color:var(--gray-600, #6c757d)}.project-bar__actions{margin-left:auto;display:flex;gap:var(--space-2, .5rem)}.project-bar__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--space-2, .5rem);margin-top:var(--space-3, .75rem);align-items:end}.project-bar__form-field{display:flex;flex-direction:column;gap:.125rem;font-size:var(--font-size-xs, .75rem);color:var(--gray-700, #495057)}.project-bar__form-field input{border:1px solid var(--border-color, #d8dde3);border-radius:.375rem;padding:.25rem .5rem}.project-bar__form-actions{display:flex;gap:var(--space-2, .5rem);align-items:center}.project-bar__error{margin-top:var(--space-2, .5rem);color:var(--color-danger, #dc3545);font-size:var(--font-size-sm, .875rem)}.project-workspace__body{display:flex;align-items:stretch;gap:0;flex:1 1 auto;min-height:100%}.project-workspace__content{flex:1 1 auto;min-width:0;padding-bottom:var(--workspace-content-padding, 1rem)}.project-sidebar-shell{position:relative;flex:0 0 var(--project-sidebar-width, 16rem);max-width:var(--project-sidebar-width, 16rem);align-self:stretch;display:flex;min-height:100%;background:var(--surface-chrome, var(--green-800, #004030))}.project-sidebar-shell .project-sidebar{flex:1 1 auto;max-width:none;min-width:0}.workspace-resize-handle{position:absolute;top:0;bottom:0;width:6px;margin:0 -3px;cursor:col-resize;touch-action:none;z-index:3}.workspace-resize-handle:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translate(-50%);background:transparent;transition:background .15s ease}.workspace-resize-handle:hover:after,.workspace-resize-handle:focus-visible:after{background:var(--iti-primary, #084830)}.project-sidebar__resize-handle{right:0}.design-workspace-shell{display:flex;align-items:stretch;gap:0;min-width:0}.design-workspace-center{flex:1 1 auto;min-width:0}.design-workspace-shell--with-assist{gap:0}.design-ai-assist-pane{position:relative;flex:0 0 var(--design-ai-assist-width, 17rem);max-width:var(--design-ai-assist-width, 17rem);align-self:stretch;display:flex;flex-direction:column;min-height:12rem;border:1px solid var(--border-color, #d8dde3);border-radius:.375rem;background:#fafbfc;overflow:hidden}.design-ai-assist-pane__resize-handle{left:0}.design-ai-assist-pane__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .65rem;border-bottom:1px solid #eef2f6;background:#fff}.design-ai-assist-pane__title{font-size:var(--font-size-xs);font-weight:700;color:var(--text-heading, #2c5282)}.design-ai-assist-pane__placeholder{margin:0;padding:.65rem;font-size:var(--font-size-xs);line-height:1.45}.spanlink-design-workspace .design-workspace-center .calc-section{margin-bottom:1.5rem}.span-table-workspace{--span-table-loads-pane-width: 20rem;display:flex;align-items:stretch;gap:0;min-height:calc(100vh - 9rem);min-width:0}.span-table-loads-pane{position:relative;flex:0 0 var(--span-table-loads-pane-width, 20rem);max-width:var(--span-table-loads-pane-width, 20rem);align-self:stretch;display:flex;flex-direction:column;min-height:calc(100vh - 9rem);border-right:1px solid var(--border-color, #d8dde3);background:var(--surface-white, #fff);overflow:hidden}.span-table-loads-pane__resize-handle{right:0}.span-table-loads-pane__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;border-bottom:1px solid #eef2f6;background:#fafbfc;flex-shrink:0}.span-table-loads-pane__title{font-size:var(--font-size-xs);font-weight:700;color:var(--text-heading, #2c5282);letter-spacing:.02em}.span-table-loads-pane__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:.75rem}.span-table-loads-pane__body .calc-section,.span-table-loads-pane__body .span-table-slot-loads,.span-table-loads-pane__body .span-table-slot-output{margin-bottom:0;padding:0;border:none;background:transparent}.span-table-workspace-main{display:flex;align-items:stretch;gap:0;flex:1 1 auto;min-width:0;padding:var(--workspace-content-padding, 1rem)}.span-table-workspace-center{min-width:0}.span-table-workspace-main .design-ai-assist-pane{align-self:stretch;min-height:calc(100vh - 9rem)}.spanlink-span-table-workspace{width:100%}.app-main--chrome:has(.spanlink-span-table-workspace){padding-bottom:1rem}.app-main--chrome:has(.project-workspace){display:flex;flex-direction:column;padding-bottom:0}.app-main--chrome:has(.project-workspace)+.app-footer{margin-top:0}.project-workspace__content .spanlink-design-workspace.row{--bs-gutter-x: 0;margin-left:0;margin-right:0}.project-workspace__content .spanlink-design-workspace>[class*=col-],.app-main--chrome:has(.spanlink-design-workspace) .spanlink-design-workspace>[class*=col-]{padding-left:0;padding-right:0}.app-main--chrome:has(.spanlink-design-workspace) .spanlink-design-workspace.row{--bs-gutter-x: 0;margin-left:0;margin-right:0}.project-workspace__content #spanlink-web-root{width:100%}.project-sidebar__chrome{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2, .5rem);margin:0 0 .65rem;padding:0 0 .65rem;border-bottom:1px solid var(--sidebar-border)}.project-sidebar__brand{font-size:.9375rem;font-weight:var(--font-weight-semibold, 600);color:var(--sidebar-text, var(--green-50, #f0f4f3));text-decoration:none;line-height:1.2;min-width:0}.project-sidebar__brand:hover{color:#fff;text-decoration:none}.project-sidebar__chrome-actions{display:inline-flex;align-items:center;gap:.15rem;flex-shrink:0}.project-sidebar__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid transparent;border-radius:.3rem;background:transparent;color:var(--sidebar-text-muted);text-decoration:none;cursor:pointer}.project-sidebar__icon-btn:hover{border-color:var(--sidebar-border);background:var(--sidebar-hover);color:var(--sidebar-text)}.sidebar-panel-icon{display:block}.project-sidebar{--sidebar-bg: var(--surface-chrome, var(--green-800, #004030));--sidebar-text: var(--green-50, #f0f4f3);--sidebar-text-muted: var(--green-200, #bfcfc9);--sidebar-text-subtle: var(--green-300, #97b2a8);--sidebar-border: rgba(240, 244, 243, .16);--sidebar-hover: rgba(240, 244, 243, .08);--sidebar-active: rgba(240, 244, 243, .14);--sidebar-input-bg: var(--green-900, #04281a);--sidebar-link: var(--green-100, #e1e9e6);flex:1 1 auto;max-width:none;align-self:stretch;display:flex;flex-direction:column;min-height:100%;border:none;border-right:1px solid var(--green-900, #04281a);border-radius:0;background:var(--sidebar-bg);color:var(--sidebar-text);color-scheme:dark;padding:.35rem var(--space-3, .75rem) var(--space-3, .75rem) 0;box-shadow:none;overflow-y:auto}.project-sidebar :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--focus-ring-on-dark, #fff);outline-offset:1px}.project-sidebar .project-card,.project-sidebar .project-sidebar__header,.project-sidebar .project-sidebar__body{padding-left:.5rem}.project-sidebar__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2, .5rem);padding-bottom:var(--space-2, .5rem);border-bottom:1px solid var(--sidebar-border)}.project-sidebar__title{font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);margin:0;color:var(--sidebar-text)}.project-sidebar__add{display:flex;gap:.25rem}.project-sidebar__body{display:flex;flex-direction:column;gap:var(--space-2, .5rem);margin-top:var(--space-2, .5rem);flex:1 1 auto}.project-sidebar .project-level{border:none;border-radius:0;overflow:visible;background:transparent;box-shadow:none;border-top:1px solid var(--sidebar-border)}.project-sidebar .project-level:first-child{border-top:none}.project-sidebar .project-level__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2, .5rem);padding:.375rem .25rem;background:transparent}.project-sidebar .project-level__name{font-family:inherit;font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);display:flex;align-items:center;gap:.375rem;flex:1 1 auto;min-width:0;border:none;background:transparent;padding:0;text-align:left;cursor:pointer;color:var(--sidebar-text);-webkit-user-select:none;user-select:none}.project-sidebar .project-level__name--static{cursor:default;-webkit-user-select:auto;user-select:auto}.project-sidebar .project-level__name-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-sidebar .project-level__prefix{font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-normal, 400);color:var(--sidebar-text-muted);border:1px solid var(--sidebar-border);border-radius:.25rem;padding:0 .25rem;background:transparent}.project-level__actions{display:flex;gap:.125rem;flex:0 0 auto}.project-sidebar .project-level__icon{border:none;background:transparent;cursor:pointer;color:var(--sidebar-text-muted);font-size:var(--font-size-sm);line-height:1;padding:.125rem .25rem;border-radius:.25rem}.project-sidebar .project-level__icon:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.project-level__edit{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.project-sidebar .project-level__edit-name,.project-sidebar .project-level__edit-prefix{border:1px solid var(--sidebar-border);border-radius:.25rem;padding:.125rem .375rem;background:var(--sidebar-input-bg);color:var(--sidebar-text)}.project-sidebar .project-level__edit-name{flex:1 1 6rem;min-width:5rem}.project-sidebar .project-level__edit-prefix{width:3.5rem}.project-sidebar .project-level__empty{margin:0;padding:.375rem .5rem;font-size:var(--font-size-xs, .75rem);color:var(--sidebar-text-subtle)}.project-sidebar .project-type-group{padding:.25rem .125rem .375rem}.project-sidebar .project-type-group__heading{display:flex;align-items:center;gap:.25rem;margin:.25rem .25rem .125rem}.project-sidebar .project-type-group__title{font-size:var(--font-size-xs, .75rem);text-transform:uppercase;letter-spacing:.03em;color:var(--sidebar-text-subtle);margin:0;flex:1 1 auto}.project-sidebar .project-type-group__add{flex:0 0 auto;width:1.25rem;height:1.25rem;padding:0;border:1px solid var(--sidebar-border);border-radius:.25rem;background:transparent;color:var(--sidebar-text);line-height:1;cursor:pointer}.project-sidebar .project-type-group__add:hover{background:var(--sidebar-hover)}.project-sidebar .project-member__mark-input{flex:1 1 auto;min-width:0;border:1px solid var(--sidebar-border);border-radius:.2rem;padding:0 .25rem;background:var(--sidebar-input-bg);color:var(--sidebar-text);font:inherit;font-weight:var(--font-weight-semibold, 600);margin:-1px 0}.project-sidebar__action-error{display:flex;align-items:flex-start;gap:.25rem;margin:.25rem 0 0;padding-left:.5rem;color:var(--surface-danger-muted, #f8d7da);font-size:var(--font-size-xs, .75rem)}.project-sidebar__action-error-text{flex:1 1 auto;min-width:0}.project-sidebar .project-sidebar__action-error-dismiss{flex:0 0 auto;border:none;background:transparent;color:inherit;padding:0 .25rem;line-height:1.2;border-radius:.25rem;cursor:pointer}.project-sidebar .project-sidebar__action-error-dismiss:hover{background:var(--sidebar-hover)}.project-member-menu{position:fixed;z-index:1030;min-width:11rem;max-height:18rem;overflow:auto;padding:.25rem;border-radius:.375rem;background:var(--surface-white, #fff);color:var(--text-body, #343a40);color-scheme:light;box-shadow:var(--shadow-lg, 0 8px 25px rgba(0, 0, 0, .15))}.project-member-menu button{display:block;width:100%;border:none;background:transparent;color:var(--text-body, #343a40);text-align:left;padding:.3rem .5rem;border-radius:.25rem;cursor:pointer;font-size:var(--font-size-sm, .875rem)}.project-member-menu button:hover,.project-member-menu button:focus-visible{background:var(--green-50, #f0f4f3)}.project-sidebar .project-member-menu button:focus-visible{outline:2px solid var(--focus-ring, #084830);outline-offset:-2px}.project-member-menu__label{padding:.35rem .5rem .15rem;font-size:var(--font-size-xs, .75rem);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted, #6c757d)}.project-member-menu .project-member-menu__close{margin-top:.25rem;color:var(--text-muted, #6c757d)}.project-sidebar .project-member{display:flex;align-items:center;gap:var(--space-2, .5rem);width:100%;border:none;background:transparent;text-align:left;cursor:pointer;padding:.25rem .375rem;border-radius:.25rem;font-size:var(--font-size-sm, .875rem);color:var(--sidebar-text)}.project-sidebar .project-member:hover{background:var(--sidebar-hover)}.project-sidebar .project-member--active{background:var(--sidebar-active);box-shadow:inset 2px 0 0 var(--green-50, #f0f4f3);outline:none}.project-sidebar .project-member:focus-visible{outline:2px solid var(--focus-ring-on-dark, #fff);outline-offset:1px}.project-sidebar .project-member__mark{font-weight:var(--font-weight-semibold, 600);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sidebar-text)}.project-member__size{flex:1 1 auto;color:var(--sidebar-text-muted, var(--gray-600, #6c757d));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-status{flex:0 0 auto;font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold, 600);border-radius:.25rem;padding:0 .375rem}.project-status--pass{color:var(--color-success-emphasis, #0f5132);background:var(--surface-success-muted, #d1e7dd)}.project-status--fail{color:var(--color-danger-emphasis, #842029);background:var(--surface-danger-muted, #f8d7da)}.project-status--unknown{color:var(--gray-700, #495057);background:var(--gray-200, #dee2e6)}@media (max-width: 991px){.project-workspace__body{flex-direction:column}.project-sidebar{flex-basis:auto;max-width:none;width:100%;min-height:auto}}.member-schedule__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm, .875rem)}.member-schedule__table th,.member-schedule__table td{text-align:left;padding:.375rem .625rem;border-bottom:1px solid var(--border-color, #e3e7ec)}.member-schedule__table thead th{border-bottom:2px solid var(--border-color, #d8dde3);font-weight:var(--font-weight-semibold, 600);white-space:nowrap}.member-schedule__table tbody tr:hover{background:var(--gray-100, #e9ecef)}.member-schedule__mark{font-weight:var(--font-weight-semibold, 600)}.member-schedule__empty{color:var(--gray-600, #6c757d)}.member-schedule__footnote{margin-top:var(--space-3, .75rem);font-size:var(--font-size-sm, .875rem)}.project-sidebar__root{display:flex;flex-direction:column;gap:.375rem;padding-bottom:var(--space-2, .5rem);border-bottom:1px solid var(--sidebar-border)}.project-sidebar__root-line{display:flex;align-items:center;justify-content:space-between;gap:.25rem}.project-sidebar__project{font-weight:var(--font-weight-semibold, 600);font-size:var(--font-size-sm, .875rem);color:var(--sidebar-text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-sidebar__project:hover{text-decoration:underline}.project-sidebar__switch{width:100%;border:1px solid var(--sidebar-border);border-radius:.375rem;padding:.2rem .4rem;background:var(--sidebar-input-bg);color:var(--sidebar-text);font-size:var(--font-size-sm, .875rem)}.project-sidebar__root-actions{display:flex;gap:.75rem}.project-sidebar__link{font-size:var(--font-size-xs, .75rem);color:var(--sidebar-link);text-decoration:none}.project-sidebar__link:hover{text-decoration:underline}.project-sidebar .project-sidebar__collapse,.project-sidebar .project-sidebar__rail-toggle{border:none;background:transparent;cursor:pointer;color:var(--sidebar-text-muted);font-size:var(--font-size-sm);line-height:1;padding:.125rem .25rem;border-radius:.25rem}.project-sidebar .project-sidebar__collapse:hover,.project-sidebar .project-sidebar__rail-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.project-sidebar .project-level__toggle{display:flex;align-items:center;gap:.375rem;flex:1 1 auto;border:none;background:transparent;cursor:pointer;text-align:left;padding:0;font:inherit;color:inherit;min-width:0}.project-sidebar .project-level__chevron-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;padding:.125rem .0625rem;line-height:1;color:inherit;border-radius:.25rem}.project-sidebar .project-level__chevron-btn:hover{background:var(--sidebar-hover)}.project-sidebar .project-level__chevron{color:var(--sidebar-text-subtle);font-size:var(--font-size-xs);width:.8rem;flex:0 0 auto}.project-type-group__rows{display:flex;flex-direction:column;gap:.0625rem}.project-dot{flex:0 0 auto;width:.5rem;height:.5rem;border-radius:50%;display:inline-block}.project-dot--pass{background:var(--color-success, #198754)}.project-dot--fail{background:var(--color-danger, #dc3545)}.project-dot--unknown{background:var(--gray-400, #adb5bd)}.project-sidebar .project-dot--pass{background:#7dcea0;box-shadow:0 0 0 1px #ffffff59}.project-sidebar .project-dot--fail{background:#f07167;box-shadow:0 0 0 1px #ffffff40}.project-sidebar .project-dot--unknown{background:var(--green-400, #668e7f)}.project-data{border:1px solid var(--border-color, #d8dde3);border-radius:.5rem;background:var(--surface-white, #fff);padding:var(--space-3, .75rem);max-width:72rem}.project-data--bare{border:0;border-radius:0;background:none;padding:0;max-width:none}.project-data__top{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3, .75rem);flex-wrap:wrap}.project-data__picker{display:flex;flex-direction:column;gap:.125rem}.project-data__label{font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold, 600);color:var(--gray-700, #495057)}.project-data__select{min-width:14rem;border:1px solid var(--border-color, #d8dde3);border-radius:.375rem;padding:.25rem .5rem;background:var(--surface-white, #fff)}.project-data__top-actions{display:flex;gap:var(--space-2, .5rem);align-items:center}.project-data__section-title{margin:0;font-size:1rem;font-weight:var(--font-weight-semibold, 600)}.project-data__section-sub{margin:.125rem 0 0;color:var(--gray-600, #6c757d);font-size:var(--font-size-sm, .875rem)}.project-data__table-wrap{margin-top:var(--space-3, .75rem);overflow-x:auto;border:1px solid var(--border-color, #e3e7ec);border-radius:.375rem}.project-data__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm, .875rem)}.project-data__table th,.project-data__table td{text-align:left;padding:.45rem .625rem;border-bottom:1px solid var(--border-color, #e3e7ec);vertical-align:middle}.project-data__table thead th{font-weight:var(--font-weight-semibold, 600);color:var(--gray-700, #495057);background:var(--gray-100, #e9ecef);white-space:nowrap}.project-data__table tbody tr:last-child td{border-bottom:none}.project-data__row--loaded{background:var(--iti-primary-soft, #e1e9e6)}.project-data__project-name{border:none;background:transparent;padding:0;color:var(--iti-primary, #084830);font:inherit;font-weight:var(--font-weight-semibold, 600);cursor:pointer;text-align:left}.project-data__project-name:hover,.project-data__project-name--selected{text-decoration:underline}.project-data__row-actions{display:flex;justify-content:flex-end;gap:var(--space-2, .5rem);white-space:nowrap}.project-data__details{margin-top:var(--space-4, 1rem);padding-top:var(--space-3, .75rem);border-top:1px solid var(--border-color, #d8dde3)}.project-data__details-head{display:flex;align-items:baseline;gap:var(--space-2, .5rem);flex-wrap:wrap}.project-data__details-project,.project-data__empty{color:var(--gray-600, #6c757d);font-size:var(--font-size-sm, .875rem)}.project-data__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:var(--space-2, .5rem);margin-top:var(--space-3, .75rem);align-items:end}.project-data__field{display:flex;flex-direction:column;gap:.125rem;font-size:var(--font-size-xs, .75rem);color:var(--gray-700, #495057)}.project-data__field input,.project-data__field select{border:1px solid var(--border-color, #d8dde3);border-radius:.375rem;padding:.25rem .5rem;background:var(--surface-white, #fff)}.project-data__form-actions{display:flex;align-items:end}.project-data__error{margin-top:var(--space-2, .5rem);color:var(--color-danger, #dc3545);font-size:var(--font-size-sm, .875rem)}.project-sidebar .project-card{display:flex;flex-direction:column;gap:.375rem;padding-bottom:var(--space-2, .5rem);margin-bottom:var(--space-2, .5rem);border-bottom:1px solid var(--sidebar-border);background:transparent}.project-sidebar .project-card__line{display:flex;align-items:center;gap:.25rem}.project-sidebar .project-card__toggle{border:none;background:transparent;cursor:pointer;color:var(--sidebar-text-subtle);font-size:var(--font-size-xs);line-height:1;padding:.125rem;flex:0 0 auto;border-radius:.25rem}.project-sidebar .project-card__toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.project-sidebar .project-card__switch{flex:1 1 auto;min-width:0;border:1px solid var(--sidebar-border);border-radius:.375rem;padding:.2rem .4rem;background:var(--sidebar-input-bg);color:var(--sidebar-text);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600)}.project-sidebar .project-card__switch option{background:var(--sidebar-bg);color:var(--sidebar-text)}.project-sidebar .project-card__body{display:flex;flex-direction:column;gap:.375rem}.project-sidebar .project-card__summary{margin:0;display:flex;flex-direction:column;gap:.0625rem}.project-sidebar .project-card__summary-row{display:grid;grid-template-columns:3.25rem 1fr;gap:.5rem;font-size:var(--font-size-xs, .75rem)}.project-sidebar .project-card__summary-row dt{color:var(--sidebar-text-subtle);font-weight:var(--font-weight-normal, 400)}.project-sidebar .project-card__summary-row dd{margin:0;color:var(--sidebar-text);overflow-wrap:anywhere}.project-sidebar .project-card__form{display:flex;flex-direction:column;gap:.25rem}.project-sidebar .project-card__field{display:flex;flex-direction:column;gap:.0625rem;font-size:var(--font-size-xs, .75rem);color:var(--sidebar-text-muted)}.project-sidebar .project-card__field input,.project-sidebar .project-card__field select{border:1px solid var(--sidebar-border);border-radius:.375rem;padding:.2rem .4rem;background:var(--sidebar-input-bg);color:var(--sidebar-text);font-size:var(--font-size-sm, .875rem)}.project-sidebar .project-card__form-actions,.project-sidebar .project-card__actions{display:flex;gap:.375rem;align-items:center}.project-sidebar .project-card__links{display:flex;gap:.75rem;padding-top:.125rem}.project-sidebar .project-card__links a{font-size:var(--font-size-xs, .75rem);color:var(--sidebar-link);text-decoration:none}.project-sidebar .project-card__links a:hover{text-decoration:underline;color:var(--sidebar-text)}.project-sidebar .project-card__error{color:var(--color-danger, #dc3545);font-size:var(--font-size-xs, .75rem)}.project-sidebar .btn-outline-secondary{color:var(--sidebar-text);border-color:var(--sidebar-border);background:transparent}.project-sidebar .btn-outline-secondary:hover,.project-sidebar .btn-outline-secondary:focus{color:#fff;border-color:var(--green-200, #bfcfc9);background:var(--sidebar-hover)}.project-sidebar .span-geometry-modal .btn-outline-secondary{color:var(--bs-btn-color);border-color:var(--bs-btn-border-color);background:var(--bs-btn-bg)}.project-sidebar .span-geometry-modal .btn-outline-secondary:hover,.project-sidebar .span-geometry-modal .btn-outline-secondary:focus{color:var(--bs-btn-hover-color);border-color:var(--bs-btn-hover-border-color);background:var(--bs-btn-hover-bg)}.project-sidebar .span-geometry-modal :is(button,a,input,select,textarea):focus-visible{outline-color:var(--focus-ring, #084830)}.project-sidebar .btn-link{color:var(--sidebar-link)}.project-sidebar .btn-link:hover{color:#fff}
