.bip-geometry{margin:24px 0;padding:22px;background:#f7faf8;border:1px solid #c7d9d1;border-radius:10px}.bip-geometry[hidden]{display:none}.bip-geometry .bip-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.bip-roof-svg{width:100%;height:auto;display:block;background:#fff;border:1px solid #c7d9d1;border-radius:8px}.bip-steel-canvas{width:100%;height:480px;display:block;touch-action:none;border:1px solid #c7d9d1;border-radius:8px;cursor:grab}.bip-steel-canvas:active{cursor:grabbing}.bip-geometry h4{margin:25px 0 12px}.bip-table-scroll{overflow:auto;border:1px solid #cfdfd8;border-radius:5px;background:white}.bip-table-scroll table{border-collapse:collapse;width:100%;min-width:540px;font-size:14px}.bip-table-scroll th,.bip-table-scroll td{padding:7px;border-bottom:1px solid #d5e2dc;text-align:left}.bip-table-scroll th{font-weight:600;background:#edf4f0;white-space:nowrap}.bip .bip-table-scroll input{min-width:75px;padding:7px;margin:0}.bip .bip-table-scroll select{min-width:125px;margin:0;font-size:13px}.bip-table-scroll button{padding:7px;font-size:13px}.bip-node-actions{display:flex;flex-wrap:wrap;gap:8px}.bip .bip-geometry-status:not(:empty),.bip .bip-roof-result.bip-error{background:#fff1e7;color:#943d15;padding:12px;border-radius:5px}.bip .bip-roof-result{font-size:15px;padding:14px;background:#e5f2ec}.bip-import{margin-top:22px}.bip-import summary{cursor:pointer;font-weight:600}.bip-import button{margin-top:10px}.bip-geometry-admin{padding:20px}.bip [data-geometry-key]{min-width:0}.bip-geometry .bip-tools label{display:flex;gap:7px;align-items:center;font-size:14px}.bip-geometry .bip-tools button[aria-pressed=true]{background:#006c69;color:#fff}@media(max-width:700px){.bip-geometry{padding:14px 10px}.bip-geometry .bip-fields{grid-template-columns:1fr 1fr}.bip-steel-canvas{height:350px}}@media(max-width:420px){.bip-geometry .bip-fields{grid-template-columns:1fr}.bip-steel-canvas{height:300px}}

.bip-section-detail{border:1px solid #c7d7d1;border-radius:8px;padding:16px;margin:16px 0}.bip-section-detail svg{width:100%;max-height:230px}.bip-stair-sides{padding:18px;background:#eef5f1;margin:16px 0}.bip-stair-sides [aria-pressed=true]{background:#006c69;color:white}.bip-steel-canvas{touch-action:none}

.bip-steel-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.bip-steel-viewer{position:sticky;top:16px;min-width:0}.bip-steel-tables{min-width:0}.bip-steel-workspace .bip-steel-canvas{height:440px}.bip-steel-tables table{min-width:0;width:100%}.bip-steel-tables input{min-width:52px!important;width:100%;padding:8px 5px!important}.bip-steel-tables td{padding:6px 3px}.bip-steel-tables button{font-size:12px;padding:8px!important}.bip-steel-tables .bip-member-table table{min-width:500px}@media(max-width:900px){.bip-steel-workspace{grid-template-columns:1fr}.bip-steel-viewer{position:relative;top:auto}.bip-steel-workspace .bip-steel-canvas{height:350px}}

.bip:has(.bip-steel-editor:not([hidden])){overflow:clip}

.bip-steel-workspace{grid-template-columns:minmax(0,2.2fr) minmax(300px,1fr)}.bip-steel-workspace .bip-steel-canvas{height:620px}.bip-steel-tables table{font-size:12px}.bip-steel-tables h4{font-size:15px}.bip .bip-steel-tables input,.bip .bip-steel-tables select{font-size:12px;min-height:36px;padding:5px 3px!important}.bip-steel-tables .bip-member-table table{min-width:360px}.bip-steel-tables .bip-table-scroll{max-height:360px}.bip-steel-tables .bip-table-scroll th{position:sticky;top:0}.bip-steel-tables .bip-node-actions button{padding:7px!important}@media(max-width:900px){.bip-steel-workspace{grid-template-columns:1fr}.bip-steel-workspace .bip-steel-canvas{height:430px}}

.bip .bip-geometry,.bip .bip-steel-editor,.bip .bip-steel-workspace{min-width:0;max-width:100%}.bip-steel-workspace{grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr)}@media(max-width:900px){.bip-steel-workspace{grid-template-columns:minmax(0,1fr)}}

.bip-roof-views{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.bip-roof-views section{min-width:0}.bip-roof-views .bip-roof-svg{width:100%;height:auto;display:block}@media(max-width:760px){.bip-roof-views{grid-template-columns:1fr}}

/* Give both roof drawings useful space; preserve simultaneous visibility. */
.bip-roof-views{grid-template-columns:minmax(0,1fr);align-items:start}.bip-roof-views svg{display:block;width:100%;height:auto;background:white;border:1px solid #c7d9d1;border-radius:8px;box-sizing:border-box}.bip-roof-views h4{margin:14px 0 8px}@media(max-width:1100px){.bip-roof-views{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.bip-geometry{padding:10px 6px}.bip .bip-geometry input,.bip .bip-geometry select{font-size:16px!important;min-height:44px}.bip-geometry .bip-tools button,.bip-node-actions button{min-height:44px}.bip-roof-views{gap:8px}.bip-steel-workspace .bip-steel-canvas{height:340px}.bip-stair-sides{padding:10px}}

.bip-roof-scroll{max-width:100%;min-width:0;overflow:auto;overscroll-behavior-x:contain}.bip-roof-scroll.bip-roof-expanded svg{min-width:900px}.bip-roof-zoom{min-height:44px;padding:10px 14px;border:1px solid #92b0a0;border-radius:6px;background:white;color:#254a3b;font:inherit;margin:8px 0;cursor:pointer}.bip-roof-measures{font-size:16px!important;line-height:1.55;overflow-wrap:anywhere}@media(max-width:600px){.bip-roof-zoom{width:100%}}@media print{.bip-roof-zoom{display:none}.bip-roof-scroll.bip-roof-expanded svg{min-width:0}}
