.workspace-dialog.transfer-live-dialog,.workspace-dialog.door-picker-dialog{width:min(1120px,calc(100vw - 24px));max-width:1120px}
.door-plan-picker{border:1px solid #d7e2ef;border-radius:12px;background:#fff;overflow:hidden;color:#253c58;min-width:0}
.door-plan-steps{display:grid;grid-template-columns:1fr 1fr .8fr;gap:8px;padding:12px;background:#f6f9fc}
.door-plan-steps>button{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid #d6e1ed;border-radius:8px;background:#fff;padding:10px;min-width:0;color:inherit;cursor:pointer}
.door-plan-steps>button[aria-pressed=true]{border-color:#2865a6;box-shadow:0 0 0 1px #2865a6;background:#edf5ff}
.door-plan-steps>button>b{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:7px;background:#e9f1fb;color:#24548e}
.door-plan-steps>button[data-door-step=b]>b{background:#f0e9fa;color:#7245a2}
.door-plan-steps>button>span{min-width:0}.door-plan-steps small,.door-plan-steps strong{display:block}.door-plan-steps small{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#6b7d91;margin-bottom:4px}.door-plan-steps strong{font-size:12px;line-height:1.35;overflow-wrap:anywhere}.door-plan-steps svg{width:17px;height:17px}
.door-plan-instruction{margin:0;padding:10px 14px;font-size:13px;font-weight:600;border-top:1px solid #e2eaf3;border-bottom:1px solid #e2eaf3;background:#f4f8fe;min-height:40px}
.door-plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;flex-wrap:wrap}.door-plan-toolbar>label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;min-width:0}.door-plan-toolbar select{padding:8px;border:1px solid #d8e3ef;border-radius:6px;max-width:260px;font:inherit;color:inherit;background:white}.door-plan-tools{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.door-plan-tools .button{padding:7px 10px;min-height:32px;font-size:11px}.door-plan-tools .icon-button{width:30px;height:30px}.door-plan-tools output{font-size:11px;min-width:44px;text-align:center}
.door-plan-viewport{height:410px;min-height:250px;position:relative;overflow:hidden;background:#e9edf2;touch-action:none;cursor:grab;outline-offset:-3px}.door-plan-viewport.is-placing{cursor:crosshair}.door-plan-viewport.is-panning{cursor:grab}.door-plan-stage{position:absolute;top:0;left:0;transform-origin:0 0}.door-plan-stage>img{display:block;width:100%;height:100%;user-select:none;pointer-events:none}.door-room-pin{position:absolute;transform:translate(-50%,-50%);display:flex;gap:4px;align-items:center;border:1px solid #6986a7;border-radius:5px;background:#fff;color:#214b7c;font-family:inherit;font-weight:600;line-height:1.15;font-size:11px;min-height:26px;min-width:28px;padding:4px 6px;box-shadow:0 1px 4px #243d5a25;cursor:pointer;white-space:nowrap}.door-room-pin>b:empty{display:none}.door-room-pin[data-side=a]{z-index:2;background:#245d9c;color:white;border:2px solid white;box-shadow:0 0 0 2px #245d9c}.door-room-pin[data-side=b]{z-index:2;background:#794aa3;color:white;border:2px solid white;box-shadow:0 0 0 2px #794aa3}.door-room-pin:hover,.door-room-pin:focus-visible{z-index:3;outline:2px solid #e7a441;outline-offset:2px}.door-room-pin>b{padding-right:4px;border-right:1px solid #ffffff70}.door-position-pin{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:center;gap:4px;padding:5px 7px;border:2px solid white;border-radius:7px;background:#ad5808;color:white;box-shadow:0 1px 7px #0004;pointer-events:none;z-index:4;font-size:11px;font-weight:700}.door-position-pin[hidden]{display:none}.door-position-pin svg{width:20px;height:20px}.door-plan-bottom{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;font-size:11px;color:#62768e}.door-plan-picker>.room-position-help{margin:0;padding:0 14px 12px;font-size:11px}.door-plan-empty{padding:36px;line-height:1.8;text-align:center}.door-plan-viewport.is-empty{height:130px;min-height:0}.door-plan-viewport.is-empty .door-plan-stage{position:static}.door-plan-dialog{padding:0;border:0;border-radius:12px;width:calc(100vw - 32px);max-width:1600px;max-height:calc(100dvh - 32px)}.door-plan-dialog::backdrop{background:#152a44a3}.door-plan-dialog .door-plan-viewport{height:calc(100dvh - 295px);min-height:200px}.door-room-fallback{display:grid;grid-template-columns:1fr 1fr;gap:16px}.door-room-fallback label.field{gap:6px}.door-room-fallback input[type=search]{font-size:12px}.door-room-fallback select{width:100%;min-width:0}
@media(max-width:650px){.door-plan-steps{grid-template-columns:1fr 1fr;gap:6px;padding:8px}.door-plan-steps>button:last-child{grid-column:1/-1;padding:6px 10px}.door-plan-steps>button:last-child>span{display:flex;align-items:center;gap:10px}.door-plan-steps>button:last-child small{margin:0}.door-plan-toolbar select{max-width:calc(100vw - 130px)}.door-plan-tools{gap:3px}.door-plan-viewport{height:340px}.door-room-fallback{grid-template-columns:1fr}.door-plan-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}.door-plan-dialog .door-plan-viewport{height:calc(100dvh - 380px)}.door-plan-steps strong{font-size:11px}}

.door-position-pin{transform:translate(-50%,-50%) rotate(var(--door-turn,0deg));width:60px;height:22px;justify-content:center;padding:2px 5px;border-radius:3px;pointer-events:auto;cursor:pointer;font-family:inherit;white-space:nowrap}.door-position-pin span{overflow:hidden;text-overflow:ellipsis}.door-position-pin:focus-visible{outline:3px solid #147a80;outline-offset:3px}.door-orientation-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:end;padding:12px 14px;background:#f5f8fb}.door-orientation-tools[hidden]{display:none}.door-orientation-tools label{display:grid;gap:5px;font-size:11px;color:#395570}.door-orientation-tools select{padding:8px;border:1px solid #c5d4e1;border-radius:6px;background:white;color:inherit;max-width:100%}.door-orientation-tools p{flex-basis:100%;font-size:11px;margin:0;color:#526b82}.door-plan-dialog .door-plan-viewport{height:calc(100dvh - 420px);min-height:200px}

.door-plan-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff;position:sticky;top:0;z-index:6}.door-plan-dialog-heading h3{font-size:15px;margin:0}.door-plan-dialog-heading .icon-button{flex-shrink:0}.door-plan-dialog [data-door-action="expand"]{display:none}.door-plan-dialog .door-plan-viewport{height:calc(100dvh - 460px)}
.door-position-pin{width:max-content;min-width:60px;max-width:none}.door-position-pin span{overflow:visible;text-overflow:clip}
