.arrangement-section{padding:var(--space-section-y) 0;background:var(--paper)}.arrangement-app{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;scroll-margin-top:96px;overflow:hidden}.arrangement-tabs-shell{background:var(--green);position:relative}.arrangement-tabs{background:var(--green);grid-template-columns:repeat(7,1fr);display:grid}.arrangement-tabs button{color:#ffffffe6;cursor:pointer;background:0 0;border:0;border-right:1px solid #ffffff1f;border-radius:0;place-items:center;gap:3px;min-height:66px;margin:8px 4px;padding:10px 12px;display:grid}.arrangement-tabs strong{font-size:.76rem}.arrangement-tabs small{opacity:.9;font-size:.68rem}.arrangement-tabs button[aria-selected=true]{color:var(--green);background:var(--mint)}.arrangement-tabs button[aria-selected=true] small{opacity:1}.arrangement-tabs button:hover,.arrangement-tabs button:focus-visible{color:#fff;background:var(--pink)}.arrangement-tab-scroll-hint{display:none}.arrangement-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);display:grid}.arrangement-frame{background:var(--mint-fog);min-height:680px;position:relative;overflow:hidden}.arrangement-frame>img{object-fit:cover}.arrangement-frame canvas{cursor:grab;touch-action:none}.arrangement-frame[data-dragging=true] canvas{cursor:grabbing}.arrangement-frame:fullscreen{width:100vw;height:100vh}.viewer-controls{z-index:2;gap:7px;display:flex;position:absolute;top:18px;right:18px}.viewer-instruction,.viewer-static-label{z-index:3;position:absolute;top:18px;left:18px}.viewer-instruction{max-width:min(360px,100% - 150px);color:var(--green);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;background:#ffffffe6;border:1px solid #005e4224;align-items:center;gap:12px;padding:12px 15px;display:flex;box-shadow:0 10px 28px #005e421a}.viewer-instruction>svg{width:20px;color:var(--pink);flex:0 0 20px}.viewer-instruction>span{display:grid}.viewer-instruction strong{font-size:.78rem}.viewer-instruction small{color:var(--muted);font-size:.68rem;line-height:1.35}.viewer-instruction.is-selected{color:#fff;background:var(--green);border-color:#0000}.viewer-instruction.is-selected small{color:#ffffffb8}.viewer-instruction.is-dragging{background:var(--pink);transform:translateY(-2px)}.viewer-instruction.is-selected>svg{color:var(--lavender)}.viewer-static-label{color:var(--green);background:#ffffffe0;padding:8px 12px;font-size:.68rem;font-weight:750}.viewer-edit-controls{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #005e4226;justify-content:space-between;align-items:center;gap:12px;width:min(730px,100% - 36px);padding:9px 10px 9px 14px;display:flex;position:absolute;bottom:54px;left:50%;transform:translate(-50%);box-shadow:0 14px 34px #005e4224}.viewer-wall-picker{flex:0 210px;align-items:stretch;gap:5px;min-width:0;display:grid}.viewer-wall-picker>span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:850}.viewer-wall-picker select{width:100%;min-width:150px;height:38px;color:var(--green);border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:0;padding:0 34px 0 10px;font-size:.72rem;font-weight:850}.viewer-wall-picker select:hover,.viewer-wall-picker select:focus-visible{border-color:var(--pink);outline:2px solid var(--pink);outline-offset:2px}.viewer-edit-controls__divider{background:var(--line);width:1px;height:34px}.viewer-edit-actions{flex:none;gap:6px;display:flex}.viewer-edit-actions button{min-height:38px;color:var(--green);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:.68rem;font-weight:800;transition:color .16s,border-color .16s,background .16s,transform .16s;display:flex}.viewer-edit-actions button:nth-child(-n+2){color:#fff;border-color:var(--green);background:var(--green)}.viewer-edit-actions button:hover:not(:disabled),.viewer-edit-actions button:focus-visible:not(:disabled){color:#fff;border-color:var(--pink);background:var(--pink);transform:translateY(-2px)}.viewer-edit-actions button:disabled{opacity:.32;cursor:not-allowed}.viewer-edit-actions svg{flex:0 0 16px;width:16px}.viewer-controls button{width:42px;height:42px;color:var(--green);border:1px solid var(--line);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffdb;border-radius:50%;place-items:center;transition:color .16s,background .16s,transform .16s;display:grid}.viewer-controls button:hover,.viewer-controls button:focus-visible{color:#fff;background:var(--pink);transform:translateY(-2px)}.viewer-controls svg{width:17px}.viewer-hint{z-index:2;color:var(--green);pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;padding:4px 9px;font-size:.64rem;position:absolute;bottom:15px;left:50%;transform:translate(-50%)}.wall-drag-label{color:#fff;background:var(--pink);font-family:var(--font-sans), Arial, sans-serif;letter-spacing:.02em;white-space:nowrap;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:0;align-items:center;gap:7px;padding:8px 11px;font-size:11px;font-weight:850;display:inline-flex;transform:translateZ(0);box-shadow:0 8px 22px #005e4238}.wall-drag-label>span{font-size:14px}.wall-drag-label.is-dragging{background:var(--green);cursor:grabbing;transform:scale(1.06)}.viewer-loading{height:680px;color:var(--green);place-items:center;display:grid}.three-hotspot{color:#fff;background:var(--pink);white-space:nowrap;border-radius:0;padding:6px 9px;font-size:10px;font-weight:700;display:block;box-shadow:0 5px 20px #005e4229}.arrangement-info{flex-direction:column;padding:38px 30px;display:flex}.arrangement-info>.tag{align-self:flex-start;align-items:center;gap:8px;display:inline-flex}.arrangement-info>.tag small{opacity:.72;border-left:1px solid;padding-left:8px;font-size:.58rem}.arrangement-info h2{color:var(--green);margin:32px 0 14px;font-size:2.85rem;line-height:.98}.arrangement-info p{color:var(--muted)}.arrangement-reference-photo{gap:7px;margin:20px 0 0;display:grid}.arrangement-reference-photo>div{border:1px solid var(--line);background:var(--mint);border-radius:0;width:100%;height:132px;position:relative;overflow:hidden}.arrangement-reference-photo img{object-fit:cover;object-position:center}.arrangement-reference-photo figcaption{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:700}.arrangement-wall-count{background:var(--mint);border:1px solid #005e4229;gap:12px;margin-top:22px;padding:16px;display:grid}.arrangement-wall-count__intro{gap:2px;display:grid}.arrangement-wall-count__intro strong{color:var(--green);font-size:.82rem}.arrangement-wall-count__intro small,.arrangement-wall-count__hint{color:var(--green);font-size:.64rem;line-height:1.4}.arrangement-room-settings{background:#fff;border:1px solid #005e4233;gap:12px;margin-top:14px;padding:16px;display:grid}.arrangement-room-settings__intro{gap:2px;display:grid}.arrangement-room-settings__intro strong{color:var(--green);font-size:.82rem}.arrangement-room-settings__intro small{color:var(--muted);font-size:.64rem}.arrangement-room-presets{flex-wrap:wrap;gap:6px;display:flex}.arrangement-room-presets button{min-height:34px;color:var(--green);border:1px solid var(--green);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:7px 11px;font-size:.66rem;font-weight:750}.arrangement-room-presets button[aria-pressed=true],.arrangement-room-presets button:hover,.arrangement-room-presets button:focus-visible{color:#fff;border-color:var(--pink);background:var(--pink)}.arrangement-room-dimensions{grid-template-columns:1fr;gap:8px;display:grid}.arrangement-room-dimensions label{color:var(--green);grid-template-columns:minmax(72px,1fr) auto;align-items:center;gap:12px;font-size:.65rem;font-weight:750;display:grid}.arrangement-room-dimension-control{white-space:nowrap;grid-template-columns:62px 38px;align-items:center;gap:7px;display:grid}.arrangement-room-dimensions input{width:62px;height:34px;color:var(--green);font:inherit;text-align:center;background:#fff;border:1px solid #005e4240;border-radius:0;padding:4px}.arrangement-wall-stepper{grid-template-columns:40px minmax(54px,1fr) 40px;gap:7px;display:grid}.arrangement-wall-stepper button,.arrangement-wall-stepper input{border:1px solid #005e423d;border-radius:0;height:40px}.arrangement-wall-stepper button{color:#fff;background:var(--green);cursor:pointer;border-radius:999px;place-items:center;transition:border-color .16s,background .16s,transform .16s;display:grid}.arrangement-wall-stepper button:hover:not(:disabled),.arrangement-wall-stepper button:focus-visible:not(:disabled){border-color:var(--pink);background:var(--pink);transform:translateY(-2px)}.arrangement-wall-stepper button:disabled{opacity:.35;cursor:not-allowed}.arrangement-wall-stepper button svg{width:17px}.arrangement-wall-stepper input{width:100%;color:var(--green);font:inherit;text-align:center;background:#fff;font-size:.88rem;font-weight:850}.arrangement-info dl{margin:18px 0 32px}.arrangement-info dl div{border-top:1px solid var(--line);padding:12px 0}.arrangement-info dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem}.arrangement-info dd{color:var(--green);margin:3px 0 0;font-weight:600}.arrangement-info .button{margin-top:auto}@media (max-width:900px){.arrangement-tabs{scroll-snap-type:x proximity;scrollbar-color:#ffffff6b transparent;scrollbar-width:thin;display:flex;overflow-x:auto}.arrangement-tabs button{scroll-snap-align:start;min-width:150px}.arrangement-tab-scroll-hint{color:#ffffffd1;background:var(--green);letter-spacing:.04em;text-align:right;padding:5px 14px 7px;font-size:.66rem;font-weight:750;display:block}.arrangement-layout{grid-template-columns:1fr}.arrangement-frame{min-height:520px}.viewer-edit-controls{width:calc(100% - 24px)}}@media (max-width:600px){.viewer-controls--camera button:first-child,.viewer-controls--camera button:nth-child(2),.viewer-controls--camera button:nth-child(3){display:none}.arrangement-frame{min-height:430px}.viewer-hint,.viewer-edit-controls{display:none}.viewer-static-label{top:12px;left:12px}}
