.ratio-model{border:1px solid #c7d0cb;background:#f2f4ef;min-width:0}.ratio-model .bridge3d-stage{height:345px;min-height:345px!important}.bridge3d-stage{position:relative;overflow:hidden;touch-action:none}.bridge3d-stage canvas{display:block;width:100%;height:100%;cursor:grab}.bridge3d-stage canvas:active{cursor:grabbing}.bridge3d-stage canvas:focus-visible{outline:2px solid #237aab;outline-offset:-3px}.bridge3d-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.bridge3d-label{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;padding:2px 5px;border-radius:2px;background:rgba(250,250,244,.92);color:var(--dimension-color);font:600 12px/1.5 'Segoe UI','Microsoft YaHei',sans-serif;box-shadow:0 0 0 1px #ffffff90}.bridge3d-label[hidden]{display:none}.bridge3d-label.hint{background:transparent;box-shadow:none;font-size:11px;font-weight:400;color:#586761}.ratio-model-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px 10px;border-top:1px solid #c7d0cb}.ratio-model-tools button{font:12px/1.5 inherit;padding:4px 8px;border:1px solid #aebebc;background:#fffdf8;cursor:pointer}.ratio-model-tools button[aria-pressed=true]{background:#254b61;color:white}.ratio-model-tools small{margin-left:auto;color:#53636b;font-size:10px}.ratio-model-controls{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:9px 12px;border-top:1px solid #d4dcd6}.ratio-model-controls label{font-size:11px;color:#3e505b}.ratio-model-controls input{width:100%;accent-color:#b53d32;margin:4px 0}.ratio-model-controls label:first-child input{accent-color:#237aab}.ratio-model-readout{font-size:11px;line-height:1.7;padding:0 12px 11px;color:#52626b;min-height:38px}.ratio-model-readout b{font-weight:600;color:#172c38}.ratio-model-dimension-key{display:flex;gap:12px;padding:9px 12px 0;font-size:11px}.ratio-model-dimension-key span:first-child{color:#237aab}.ratio-model-dimension-key span:last-child{color:#b53d32}.ratio-model .local-depth{position:absolute;right:10px;top:8px;bottom:auto;width:155px;background:rgba(255,253,248,.95);border:1px solid #b4c3bf;padding:7px;pointer-events:none;font-size:10px;color:#4d5f65}.local-depth svg{width:100%;height:65px;display:block}.local-depth b{color:#b53d32;font-size:10px}.bridge3d-error{font-size:13px;padding:20px;color:#7e342c}
