/* Project attachments: keyboard-accessible picker and compact file list. */
body .product-upload.product-upload{padding:0;border:0;border-radius:0}
.product-upload-heading{display:block;margin-bottom:10px;font-size:13px;font-weight:500}
.product-dropzone{position:relative;display:flex;align-items:center;gap:16px;padding:22px 20px;border:1px dashed #b8b8b8;border-radius:8px;background:var(--ground);cursor:pointer;transition:border-color .15s,background-color .15s}
.product-dropzone:hover,.product-dropzone:focus-within,.product-dropzone.is-dragging{border-color:var(--accent);background:var(--soft)}
.product-dropzone:focus-within{outline:2px solid var(--ink);outline-offset:3px}
body .product-dropzone input[type=file]{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);border:0}
.product-upload-icon{flex:none;width:28px;height:28px;fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.product-dropzone-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.product-dropzone-copy strong{font-size:13px;line-height:21px;font-weight:600;color:var(--ink)}
.product-dropzone-copy strong span{font-weight:400;color:var(--muted)}
.product-dropzone-copy>span{font-size:11px;line-height:17px;color:var(--muted)}
.product-upload-plus{margin-left:auto;flex:none;font-size:25px;line-height:1;color:var(--muted)}
.product-file-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}.product-file-list[hidden]{display:none}
.product-file-list li{display:flex;align-items:center;gap:12px;min-width:0;padding:6px 8px 6px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}
.product-file-list li>span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:13px;line-height:19px}
.product-file-list small{white-space:nowrap;font-size:11px;color:var(--muted)}
.product-file-list button{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);font:400 23px/1 var(--font);cursor:pointer}
.product-file-list button:hover{background:var(--soft);color:var(--accent)}
body .product-upload .solution-file-status.is-error{color:var(--error)}
@media(max-width:480px){.product-dropzone{padding:18px 14px;gap:12px}.product-upload-plus{display:none}.product-dropzone-copy strong span{display:block}.product-file-list li{gap:8px}}
@media(prefers-reduced-motion:reduce){.product-dropzone{transition:none}}

body .product-upload .solution-file-status{font-size:11px;line-height:17px;margin:8px 0 0}body .product-upload .solution-file-status:empty{display:none}

.solution-spaces .space-option{min-width:0}.solution-spaces .space-toggle{display:flex;align-items:center;gap:10px;margin:0 0 12px}.solution-spaces .space-height{display:grid;gap:8px}.solution-spaces .space-height[hidden]{display:none!important}.solution-spaces .space-height input{width:100%;box-sizing:border-box}

.room-form-step[hidden]{display:none!important}.room-form-back{margin-top:12px}

body .solution-spaces .space-option .space-toggle{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;text-align:left}body .solution-spaces .space-toggle input[type="checkbox"]{flex:0 0 20px;width:20px;height:20px;margin:0}body .solution-spaces .space-toggle>span{flex:1;min-width:0}
