.photo-picker-item[data-photo-index]{height:auto;overflow:visible;padding-bottom:36px;cursor:grab;border-radius:8px;isolation:isolate}.photo-picker-item[data-photo-index]:active{cursor:grabbing}.photo-picker-item[data-photo-index]>img{border-radius:7px 7px 0 0}.floor-plan-remove:hover,.floor-plan-remove:focus-visible{background:#c92d3a;color:white;border-color:#c92d3a}.photo-order-bar{position:absolute;bottom:0;left:0;right:0;height:36px;display:grid;grid-template-columns:34px 1fr 34px;align-items:center;background:#f4f7fb;border:1px solid var(--line);border-radius:0 0 7px 7px;cursor:default}.photo-order-number{text-align:center;font-size:.8rem;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}.photo-order-bar button{height:34px;min-height:34px;padding:0;font-size:1rem;color:var(--ink);background:transparent}.photo-order-bar button:hover:not(:disabled),.photo-order-bar button:focus-visible{background:#e0e9f7}.photo-order-bar button:disabled{opacity:.25;cursor:default}.photo-picker-item.photo-dragging{opacity:.4}.photo-picker-item.photo-drop-target{outline:3px solid var(--green);outline-offset:3px}.photo-picker-item[data-photo-index] .photo-cover{bottom:36px}.photo-picker-list{align-items:start}.floor-plan-upload{min-width:0;margin:4px 0 0;padding:18px;border:1px solid var(--line);border-radius:8px}.floor-plan-upload legend{font-size:.875rem;font-weight:600;padding:0 6px}.floor-plan-upload>p{margin:0 0 14px}.floor-plan-upload .floor-plan-choose{position:relative;width:fit-content;cursor:pointer;display:inline-flex;min-height:44px;margin:0}.floor-plan-choose:focus-within{outline:2px solid var(--green);outline-offset:3px}.floor-plan-choose:has(input:disabled){opacity:.65;cursor:progress}.floor-plan-file{display:flex;align-items:center;gap:12px;padding:12px;margin:14px 0;border-radius:6px;background:#f4f7fb;font-size:.875rem}.floor-plan-file-icon{font-size:1.5rem;color:var(--green)}.floor-plan-file>span:nth-child(2){flex:1;min-width:0}.floor-plan-file a{display:block;font-size:.8125rem;margin-top:3px}.floor-plan-remove{display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%;color:var(--ink);font-size:1.35rem}.floor-plan-upload #floor-plan-status{margin:10px 0 0;min-height:1.3em}.floor-plan-upload .floor-plan-error{color:#b42331}.floor-plan-upload>.text-button{margin:8px 14px 0 0}
.photo-picker-item.photo-loading{background:var(--image-loading-bg);isolation:isolate}.photo-upload-progress{position:absolute;inset:0;overflow:hidden;background:var(--image-loading-bg)}.photo-upload-progress svg{display:block;width:100%;height:100%;fill:var(--image-loading-dot);stroke:none}.photo-upload-progress circle{transition:r .12s linear}.photo-picker-item:where(.photo-loading,:has(>.photo-placeholder)) .photo-remove{color:var(--ink)}.photo-picker-item:where(.photo-loading,:has(>.photo-placeholder)) .photo-remove svg{filter:none}@media(prefers-reduced-motion:reduce){.photo-upload-progress circle{transition:none}}
.photo-picker-item>.upload-image-reveal{bottom:auto;height:84px;border-radius:7px 7px 0 0}

/* Small, clear removal controls share the photo-navigation icon style. */
.photo-picker-item .photo-remove:is(:hover,:focus-visible){background:rgba(201,45,58,.12);color:#c92d3a}
.photo-picker-item .photo-remove:is(:hover,:focus-visible) svg{filter:drop-shadow(0 0 1px #fff)}
.photo-picker-item .photo-remove:focus-visible{outline:2px solid #c92d3a;outline-offset:1px}
@media(pointer:coarse){.photo-remove{top:0;right:0;width:44px;height:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.photo-remove{transition:none}}
