:root{color:#212720;font-synthesis:none;letter-spacing:0;background:#f4f5f2;font-family:Microsoft YaHei UI,PingFang SC,Arial,sans-serif}.app-header .new-project-button{color:#fff;background:#315940}.app-header .new-project-button:hover{background:#244631}.app-header .project-info-button{color:#315940;background:#edf3eb}.app-header .project-info-button:hover{background:#dfeadd}.pano-link-actions{align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.pano-link-actions a{color:#315940}.scene-state{z-index:3;color:#fff;text-align:center;background:#1d2c24ec;border:1px solid #ffffff3d;border-radius:10px;width:min(510px,100% - 40px);padding:25px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 14px 50px #0006}.scene-state-close{color:#fff;background:#ffffff12;border:1px solid #fff5;border-radius:6px;place-items:center;width:32px;height:32px;padding:0;display:grid;position:absolute;top:14px;right:14px}.scene-state-close:hover{background:#ffffff25}.scene-state-close svg{width:16px;height:16px}.scene-state>span{color:#e6c18b;font-size:12px;font-weight:700;display:block}.scene-state h2{margin:9px 0;font-size:22px}.scene-state p{color:#dbe4dc;margin:0;font-size:14px;line-height:1.75}.scene-state-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:19px;display:flex}.scene-state .secondary-button{color:#315940;background:#fff;border-color:#fff}.scene-state a.secondary-button{text-decoration:none}.customer .scene-state{display:none}@media (width<=720px){.app-header .brand .brand-logo{width:clamp(54px,100vw - 260px,130px)}.app-header .header-actions .mode-button{padding:0 4px}.app-header .header-actions .mode-button svg{width:16px;height:16px}.app-header .header-actions .new-project-button span{font-size:12px;display:inline}.app-header .header-actions .new-project-button svg{display:none}.scene-state{width:calc(100% - 28px);padding:19px 16px}.scene-state h2{font-size:18px}.scene-state p{font-size:12px}.scene-state-actions{gap:7px}.scene-state .primary-button,.scene-state .secondary-button{min-height:34px;padding:0 10px;font-size:12px}}dialog{color:inherit;font:inherit}.workflow-dialog{border:1px solid #d6ddd2;border-radius:8px;width:min(900px,100vw - 28px);max-height:86dvh;padding:0;box-shadow:0 16px 70px #0004}.workflow-dialog::backdrop{background:#13251cb3}.workflow-dialog .modal-title{z-index:2;background:#fff;font-size:16px;position:sticky;top:0}.dialog-body{max-height:72dvh;padding:20px;overflow:auto}.project-section{padding-top:8px!important;padding-bottom:10px!important}.project-row{align-items:center;gap:10px;margin-top:8px;display:flex}.project-row>span{color:#657268;flex:1;font-size:11px}.project-row button{font-size:11px}.scene-options{border-bottom:1px solid #d8ded6;justify-content:space-between;align-items:center;padding:0 27px 10px;display:flex}.scene-options label{align-items:center;gap:6px;font-size:12px;display:flex}.project-item{text-align:left;background:#fff;border:0;border-bottom:1px solid #e0e5de;width:100%;padding:16px 10px;display:block}.project-item:hover{background:#edf3eb}.project-item strong,.project-item small{overflow-wrap:anywhere;display:block}.project-item small{color:#6b776c;margin-top:7px;font-size:12px}.case-toolbar{flex-wrap:wrap;align-items:center;gap:10px;padding:16px 20px;display:flex}.case-toolbar input{flex:1;min-width:150px}.case-toolbar select{width:145px}.dialog-status{color:#687567;overflow-wrap:anywhere;font-size:13px;line-height:1.7}#case-status{padding:0 20px 12px}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-height:57dvh;padding:0 20px 20px;display:grid;overflow:auto}.case-item{text-align:left;background:#fff;border:1px solid #d4ddd0;border-radius:6px;min-width:0;padding:0 0 12px;overflow:hidden}.case-item:hover{border-color:#315940;box-shadow:0 0 0 1px #315940}.case-item img{aspect-ratio:4/3;object-fit:contain;background:#f1f3ee;width:100%;display:block}.case-item strong,.case-item small{overflow-wrap:anywhere;margin:9px 12px 0;display:block}.case-item strong{font-size:14px}.case-item small{color:#7b725f;font-size:12px}.image-actions{justify-content:space-between;align-items:center;display:flex}.image-caption{color:#85623a;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.customer .image-actions,.customer #reposition-cabinet,.customer #image-kind{display:none}.customer .detail{max-height:calc(100dvh - 220px);bottom:auto}.customer .detail-body .image-caption{order:3}.delivery-dialog{width:min(680px,100vw - 28px)}.local-warning{background:#fff3dd;border-left:3px solid #bf853b;margin:0 0 16px;padding:12px;font-size:13px;line-height:1.7}.approval-line{align-items:flex-start;gap:8px;margin:20px 0;font-size:13px;line-height:1.6;display:flex}.delivery-actions{flex-wrap:wrap;align-items:center;gap:14px;margin:16px 0;display:flex}.delivery-actions a{color:#315940;font-size:13px}.secondary-button{color:#315940;background:#fff;border:1px solid #b9c8b6;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 14px;font-size:13px;display:inline-flex}.check-issue{color:#a0492d;margin:7px 0;font-size:13px}#delivery-checks{font-size:14px;line-height:1.7}#share-result{border-top:1px solid #dde4d8;padding-top:8px}.header-center{min-width:0}.project-name{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.app-header .brand{min-width:210px}.app-header .mode-button{padding:0 9px}.app-header .header-actions{flex-shrink:0}.placing-prompt{z-index:4}.customer .detail-body select{display:none}@media (width<=720px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.case-toolbar{padding:12px}.case-toolbar input{flex-basis:100%}.case-toolbar select{width:120px}.dialog-body{padding:16px}.app-header .brand{min-width:0}.app-header .mode-button{padding:0 7px}.app-header{gap:7px}.customer .detail{max-height:46dvh;bottom:70px}.scene-options{padding:0 18px 8px}.workflow-dialog{max-height:90dvh}}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button svg{stroke-width:1.9px;width:17px;height:17px}svg{flex:none}[hidden]{display:none!important}body .placing-prompt{pointer-events:none;max-width:90%;font-size:12px;top:80px;transform:translate(-50%)}body .placing-prompt button{pointer-events:auto}.customer-cabinet-copy{display:none}.customer .detail{max-height:none;bottom:auto;overflow:visible}.customer .detail-body{flex:none;overflow:visible}.customer .detail-head .eyebrow,.customer .detail-body>:not(.customer-cabinet-copy),.customer .detail-footer,.customer #product-photo{display:none!important}.customer .detail-body:before,.customer .detail-body:after{display:none}.customer .customer-cabinet-copy{gap:16px;display:grid}.customer-detail-field>span{color:#7b5d3f;margin-bottom:5px;font-size:12px;font-weight:700;display:block}.customer-detail-field>strong{overflow-wrap:anywhere;font-size:16px;line-height:1.5;display:block}.customer-detail-field>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.customer-cabinet-copy figure{margin:0}.customer-cabinet-copy img{object-fit:initial;background:0 0;width:100%;height:auto;max-height:none;display:block}.app-header{z-index:20;background:#fff;border-bottom:1px solid #d9ddd7;justify-content:space-between;align-items:center;gap:20px;height:88px;padding:0 22px;display:flex;position:relative}.brand{flex-direction:column;align-items:flex-start;gap:3px;min-width:210px;display:flex}.album-return{color:#315940;cursor:pointer;background:#f8fbf7;border:1px solid #c9d4c8;border-radius:4px;align-items:center;gap:5px;min-height:24px;padding:0 6px;font-size:12px;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.album-return:hover{background:#eaf2e8;border-color:#92ad91}.album-return svg{width:14px;height:14px}.brand strong{color:#222a25;white-space:nowrap;font-size:20px;font-weight:800}.brand strong span{margin-left:5px;font-size:16px}.brand small{color:#7f5a39;white-space:nowrap;border-left:1px solid #c7ccc5;padding-left:15px;font-size:13px}.header-center{color:#666e65;align-items:center;gap:13px;font-size:13px;display:flex}.project-name{color:#282f29;font-weight:600}.status-dot{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.status-dot:before{content:"";background:#759179;border-radius:50%;width:7px;height:7px}.header-actions{border:1px solid #d4d9d1;border-radius:6px;align-items:center;gap:2px;padding:3px;display:flex}.mode-button{color:#546057;white-space:nowrap;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:8px;height:35px;padding:0 14px;font-size:13px;display:flex}.mode-button.active{color:#fff;background:#293a30}.app-body{grid-template-columns:minmax(310px,360px) minmax(0,1fr);height:calc(100dvh - 88px);min-height:600px;display:grid}.editor-panel{scrollbar-width:thin;background:#f8faf7;border-right:1px solid #d8ded6;overflow-y:auto}.panel-intro{padding:26px 27px 18px}.eyebrow{letter-spacing:.06em;color:#a06d3f;text-transform:uppercase;font-size:11px;font-weight:700}.panel-intro h1{letter-spacing:0;margin:8px 0 0;font-size:24px;line-height:1.25}.step-line{white-space:nowrap;border-bottom:1px solid #d8ded6;gap:8px;padding:0 27px 20px;display:flex}.step{color:#7a8279;background:#edf0eb;border-radius:3px;padding:6px 8px;font-size:11px}.step.active{color:#405c45;background:#e2eadf}.panel-section{border-bottom:1px solid #d8ded6;padding:20px 27px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px;display:flex}.section-heading h2{margin:0;font-size:15px;line-height:1.4}.asset-badge,.count{color:#6b746c;white-space:nowrap;font-size:11px}.source-preview{background:#ddd;border:1px solid #ced6ca;border-radius:5px;width:100%;height:162px;padding:0;display:block;overflow:hidden}.source-preview img{object-fit:cover;width:100%;height:100%;display:block}.row-actions{justify-content:flex-end;margin-top:9px;display:flex}.scene-section{padding-top:15px;padding-bottom:15px}.sidebar-floorplan{padding-top:14px;padding-bottom:14px}.sidebar-floorplan .section-heading{margin-bottom:9px}#sidebar-floorplan-image{box-sizing:border-box;object-fit:contain;background:#f1f4f0;border:1px solid #d4ddd0;border-radius:6px;width:100%;max-width:100%;height:auto;display:block}.scene-button{color:#4f5e50;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #ccd5ca;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-width:0;height:38px;font-size:12px;display:flex;overflow:hidden}.scene-button.active{color:#fff;background:#315940;border-color:#315940}.scene-button:disabled{opacity:.5}.add-scene-button{color:#315940;background:#f6faf5;border:1px dashed #9db99e;border-radius:5px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:36px;margin-top:10px;font-size:12px;font-weight:650;display:flex}.add-scene-button:hover{background:#e9f2e7;border-color:#315940}.add-scene-button svg{width:15px;height:15px}.entry-controls{align-items:center;gap:5px;display:flex}.entry-controls select{width:100px;font-size:11px}.tour-nav{scrollbar-width:thin;max-width:calc(100% - 16px);overflow-x:auto}.tour-nav button{flex:none}.scene-options{gap:8px}.subtle-button,.icon-button,.add-button,.primary-button,.danger-button{white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:36px;display:inline-flex}.subtle-button{color:#59645c;background:0 0;border:0;padding:3px 5px;font-size:12px}.subtle-button:hover{color:#285e37}.icon-button{color:#4c594e;background:#fff;border:1px solid #cbd3c8;width:38px;height:38px;padding:0}.icon-button:hover{background:#edf2eb}.primary-button{color:#fff;background:#315940;border:1px solid #315940;padding:0 15px;font-size:13px;font-weight:650}.primary-button:hover{background:#214731}.ai-generation-section{padding-top:16px;padding-bottom:16px}.generation-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.generation-actions .primary-button{width:100%;min-width:0;min-height:42px;padding:0 8px;font-size:12px}.generation-actions .primary-button svg{width:15px;height:15px}.pano-controls{align-items:center;gap:8px;display:flex}.pano-message{color:#697269;min-height:32px;margin-top:10px;font-size:11px;line-height:1.55}.pano-message.warning{color:#a14528}.cabinet-list{gap:4px;display:grid}.cabinet-item{text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:11px;width:100%;min-height:55px;padding:7px 8px;display:flex}.cabinet-item:hover,.cabinet-item.active{background:#e9efe7}.cabinet-number{color:#3b5f3e;background:#dbe8d7;border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid}.cabinet-copy{flex:1;min-width:0}.cabinet-copy strong,.cabinet-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cabinet-copy strong{font-size:13px;font-weight:650}.cabinet-copy small{color:#767e76;margin-top:2px;font-size:11px}.cabinet-item>svg{color:#8d998c;width:14px;height:14px}.add-button{color:#355e42;background:0 0;border:1px dashed #b9cbb9;width:100%;margin-top:11px;font-size:12px}.add-button:hover{background:#eff5ed}.workspace{background:#212925;min-width:0;position:relative;overflow:hidden}.viewer{touch-action:none;background:#202723;position:absolute;inset:0;overflow:hidden}.viewer canvas{width:100%;height:100%;display:block}.viewer-top{pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:18px;left:20px;right:20px}.viewer-title{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#151e18c4;border:1px solid #ffffff1f;border-radius:5px;align-items:center;gap:10px;padding:10px 13px;font-size:13px;font-weight:650;display:flex}.live-mark{background:#e0b262;border-radius:50%;width:7px;height:7px}.viewer-tools{pointer-events:auto;gap:6px;display:flex}.viewer-tool{color:#fff;background:#151e18b8;border:1px solid #ffffff40;border-radius:5px;place-items:center;width:37px;height:37px;display:grid}.viewer-tool:hover{background:#28432ee6}.viewer-bottom{color:#fff;pointer-events:none;text-shadow:0 1px 4px #000;justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;bottom:20px;left:20px;right:20px}.viewer-bottom span:first-child{background:#151e18bf;border-radius:4px;align-items:center;gap:7px;padding:8px 10px;display:flex}.viewer-bottom svg{width:14px;height:14px}.hotspots{pointer-events:none;position:absolute;inset:0}.hotspot{color:#fff;pointer-events:auto;white-space:nowrap;background:#141f18eb;border:1px solid #fff9;border-radius:24px;align-items:center;gap:7px;padding:5px 10px 5px 5px;font-size:12px;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 4px 16px #0000004d}.hotspot:hover,.hotspot.active{background:#366042}.hotspot b{color:#192419;background:#e0ab60;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.placing-prompt{color:#fff;pointer-events:auto;background:#253b2d;border:1px solid #add0aa;border-radius:5px;align-items:center;gap:14px;padding:12px 15px;font-size:13px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 30px #0008}.placing-prompt button{color:#fff;background:0 0;border:0;padding:0;display:flex}.hotspot.nav-spot{background:#2a4734;border-color:#edc98d;border-radius:5px;padding:7px 13px;font-size:12px;font-weight:700}.nav-spot svg{width:15px;height:15px}.hotspot.nav-spot:hover{background:#416a4c}.viewer canvas{transition:opacity .3s}.viewer.scene-loading canvas{opacity:.25}.tour-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;background:#192d21de;border:1px solid #ffffff36;border-radius:7px;gap:4px;padding:5px;display:flex;position:absolute;bottom:64px;left:50%;transform:translate(-50%)}.tour-nav button{color:#fff;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:12px;display:flex}.tour-nav button.active{color:#273225;background:#e5c18b}.customer .tour-nav{bottom:24px}.customer .detail .product-photo:has(img){display:flex}.customer .detail .product-photo:not(:has(img)){display:none}.detail{z-index:10;background:#fcfdfb;border:1px solid #d2ddd0;border-radius:6px;flex-direction:column;width:min(360px,100% - 30px);display:flex;position:absolute;top:70px;bottom:17px;right:15px;overflow:hidden;box-shadow:0 12px 38px #10171066}.detail-head{border-bottom:1px solid #dce3d9;justify-content:space-between;align-items:flex-start;padding:20px 20px 14px;display:flex}.detail-head h2{margin:5px 0 0;font-size:19px;line-height:1.3}.detail-body{flex-direction:column;flex:1;padding:14px 20px;display:flex;overflow-y:auto}.field-label{color:#5d6b5d;margin:9px 0 6px;font-size:11px;font-weight:650;display:block}.text-input{color:#233128;letter-spacing:0;background:#fff;border:1px solid #ccd6ca;border-radius:4px;outline:none;width:100%;padding:9px 10px;font-size:12px}.text-input:focus{border-color:#517b56;box-shadow:0 0 0 2px #cadfca}textarea.text-input{resize:vertical;min-height:70px;line-height:1.6}.product-photo{color:#839183;background:#f1f5f0;border:1px dashed #c7d4c7;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:94px;font-size:12px;display:flex;overflow:hidden}.product-photo img{object-fit:contain;background:#fff;width:100%;height:180px}.detail-footer{border-top:1px solid #dce3d9;justify-content:space-between;padding:13px 20px;display:flex}.danger-button{color:#a13d32;background:#fff;border:1px solid #e6c9c2;width:38px;padding:0}.danger-button:hover{background:#fff2f0}.customer .app-body{grid-template-columns:1fr}.customer .editor-panel{display:none}.customer .detail{background:#fdfefa}.customer .detail-body input,.customer .detail-body textarea,.customer .detail-footer,.customer .detail-body .subtle-button,.customer .field-label{display:none}.customer .detail-body{gap:12px}.customer .detail-body:before{content:attr(data-use);color:#38483a;font-size:14px;line-height:1.5}.customer .detail-body:after{content:attr(data-value);color:#617064;white-space:pre-wrap;font-size:13px;line-height:1.6}.customer .product-photo{order:2}.customer .viewer-title{font-size:15px}.customer .viewer-bottom span:first-child{display:none}.modal{z-index:50;background:#111a14bd;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-content{background:#fff;border-radius:6px;flex-direction:column;width:min(920px,100%);max-height:90dvh;display:flex;overflow:hidden}.modal-title{border-bottom:1px solid #ddd;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.modal-content img{object-fit:contain;max-width:100%;max-height:calc(90dvh - 65px);display:block}.toast{color:#fff;opacity:0;pointer-events:none;z-index:90;background:#243b2c;border-radius:5px;padding:10px 15px;font-size:12px;transition:all .2s;position:fixed;bottom:25px;left:50%;transform:translate(-50%,25px)}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=1180px){.header-center{display:none}}@media (width<=980px){.app-body{grid-template-columns:300px minmax(0,1fr)}.editor-panel .panel-section,.panel-intro,.step-line{padding-left:18px;padding-right:18px}}@media (width<=720px){.app-header{height:56px;padding:0 12px}.brand{gap:8px;min-width:0}.brand strong{font-size:15px}.brand strong span{font-size:14px}.brand small{display:none}.header-actions .mode-button{height:31px;padding:0 8px}.header-actions .mode-button span{display:none}.app-body{height:calc(100dvh - 56px);min-height:0;display:block}.editor-panel{z-index:15;border-top:1px solid #d8ded6;border-right:0;height:min(43dvh,380px);position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 20px #1a291b22}.panel-intro{padding-top:12px;padding-bottom:8px}.panel-intro h1{margin-top:3px;font-size:18px}.step-line{padding-bottom:10px}.panel-section{padding-top:12px;padding-bottom:12px}.source-preview{height:105px}.workspace{position:absolute;inset:56px 0 min(43dvh,380px)}.customer .workspace{bottom:0}.viewer-top{top:10px;left:10px;right:10px}.viewer-title{padding:8px;font-size:11px}.viewer-bottom{bottom:10px;left:10px;right:10px}.viewer-bottom span:first-child{font-size:10px}.hotspot{padding-right:6px;font-size:10px}.hotspot b{width:20px;height:20px}.detail{z-index:35;border-radius:6px 6px 0 0;width:100%;max-height:64dvh;position:fixed;inset:auto 0 0}.customer .detail{max-height:45dvh}.customer .app-body{height:calc(100dvh - 56px)}.tour-nav{bottom:45px}.tour-nav button{height:32px;padding:0 12px;font-size:11px}.viewer-bottom span:first-child,.detail:not([hidden])~.tour-nav{display:none}.customer .detail{max-height:48dvh;bottom:70px}.customer .tour-nav{bottom:14px}.customer .detail{height:auto;min-height:150px}.customer .detail-body{padding-bottom:22px}}.compact-intro{padding:18px 26px 12px!important}.compact-intro .eyebrow{margin:0 0 8px}.project-title-row{align-items:center;gap:6px;min-width:0;display:flex}.project-title-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.35;overflow:hidden}.compact-intro #save-status{color:#6c7b70;margin-top:6px;font-size:12px;display:block}.stage-nav{border-bottom:1px solid #d8ded6;gap:5px;padding:0 26px 13px;display:flex}.stage-nav .step{color:#617064;text-align:center;background:#edf1eb;border:0;border-radius:5px;flex:1;padding:7px 3px;font-size:12px}.stage-nav .step.active{color:#fff;background:#315940}.scene-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.scene-button{flex-direction:column;justify-content:center;gap:4px;align-items:flex-start!important;min-height:58px!important;padding:8px!important;display:flex!important}.scene-button strong{font-size:14px}.scene-button small{opacity:.72;font-size:11px}.scene-settings{border-bottom:1px solid #d8ded6}.scene-settings summary{color:#496052;cursor:pointer;padding:11px 26px;font-size:12px}.scene-settings .scene-options{border:0;padding-bottom:13px}.primary-add-cabinet{font-weight:700;color:#fff!important;background:#315940!important;border-color:#315940!important}.product-options-editor{border-top:1px solid #dce4d8;margin-top:20px;padding-top:16px}.product-options-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.product-options-head strong,.product-options-head small{display:block}.product-options-head strong{font-size:16px}.product-options-head small{color:#6a766d;margin-top:3px;font-size:12px;line-height:1.55}.knowledge-hint{color:#756243;background:#faf5e9;border-left:3px solid #d5a64d;margin:10px 0;padding:9px 10px;font-size:12px;line-height:1.6}.product-option-list{gap:10px;display:grid}.product-option{background:#f9fbf8;border:1px solid #d2ddd0;border-radius:8px;padding:12px}.product-option.disabled{opacity:.62}.product-option-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.product-option-top strong{font-size:14px}.product-option-top button{color:#a04b36;background:0 0;border:0;font-size:12px}.product-option label{color:#506055;margin-top:8px;font-size:12px;display:block}.product-option label .text-input{width:100%;min-height:34px;margin-top:4px}.product-option-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;display:flex}.product-option-row label{margin:0}.product-option-row select{flex:1;min-width:105px;min-height:30px}.product-option-media{color:#6b766e;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:flex}.product-option-media img{object-fit:cover;border-radius:4px;width:74px;height:56px;display:block}.product-option-media button{color:#315940;background:#fff;border:1px solid #c7d3c4;border-radius:4px;padding:5px 8px}.detail-body>label[for=cabinet-product],#cabinet-product,.detail-body>label[for=image-kind],#image-kind,.detail-body>label:not([for])+#product-photo,#upload-product,.image-actions,#image-caption{display:none!important}@media (width<=720px){.compact-intro{padding:13px 18px 9px!important}.stage-nav{padding:0 18px 10px}.scene-settings summary{padding-left:18px}.product-options-head{align-items:center}.product-options-head small{max-width:190px}.product-option-row{align-items:flex-start}.product-option-row select{flex-basis:100%}.app-header{height:74px}.app-header .brand{gap:1px;min-width:104px}.app-header .brand .brand-logo{width:104px;height:27px}.album-return{min-height:21px;padding:0 4px;font-size:10px}.album-return svg{width:12px;height:12px}.app-body,.customer .app-body{height:calc(100dvh - 74px)}.workspace{top:74px}}.catalog-trigger{color:#315940;text-align:left;background:#fff;border:1px solid #c7d3c4;border-radius:4px;justify-content:space-between;align-items:center;width:100%;min-height:36px;padding:0 10px;font-size:12px;display:flex}.catalog-trigger svg{flex:none;width:15px;height:15px;margin-left:12px}.catalog-trigger:hover{background:#f4f8f2;border-color:#315940}.catalog-trigger.placeholder{color:#6c776d}.product-photo-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.product-photo-actions .subtle-button{background:#fff;border:1px solid #c7d3c4;padding:4px 8px}.product-photo-actions .subtle-button:hover{background:#edf4eb}.detail-body #upload-product{display:inline-flex!important}.product-catalog-dialog{width:min(560px,100vw - 28px)}.album-photo-dialog{width:min(820px,100vw - 28px)}.catalog-result-list{gap:5px;max-height:48dvh;padding-top:10px;display:grid;overflow:auto}.catalog-choice{color:#273228;text-align:left;background:#fff;border:1px solid #d4ddd0;border-radius:4px;width:100%;min-height:36px;padding:7px 10px;font-size:13px}.catalog-choice:hover,.catalog-choice.selected{background:#edf4eb;border-color:#315940}.picker-empty{color:#788279;margin:12px 0;font-size:13px}.album-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.album-scope-grid button{color:#315940;text-align:left;background:#f8fbf7;border:1px solid #cdd9c9;border-radius:5px;min-height:84px;padding:14px}.album-scope-grid button:hover{background:#edf4eb;border-color:#315940}.album-scope-grid strong,.album-scope-grid span{display:block}.album-scope-grid strong{font-size:15px}.album-scope-grid span{color:#68766a;margin-top:5px;font-size:12px;line-height:1.5}.album-folder-list{gap:5px;margin:10px 0;display:grid}.album-folder-list button{color:#315940;text-align:left;background:0 0;border:0;border-bottom:1px solid #e0e6dc;min-height:34px;padding:6px 2px;font-size:13px}.album-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:48dvh;margin-top:12px;display:grid;overflow:auto}.album-photo-choice{text-align:left;background:#fff;border:1px solid #d2ddd0;border-radius:5px;min-width:0;padding:0;overflow:hidden}.album-photo-choice:hover{border-color:#315940;box-shadow:0 0 0 1px #315940}.album-photo-choice img{aspect-ratio:1;object-fit:cover;background:#eef2ec;width:100%;display:block}.album-photo-choice span{text-overflow:ellipsis;white-space:nowrap;color:#3c4a3e;padding:7px;font-size:11px;display:block;overflow:hidden}.product-option .catalog-trigger{margin-top:4px}.product-option-media button{color:#315940;background:#fff;border:1px solid #c7d3c4;border-radius:4px;padding:5px 8px;font-size:12px}.product-option-media button:hover{background:#edf4eb}@media (width<=720px){.album-scope-grid{grid-template-columns:1fr}.album-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:45dvh}.product-photo-actions{gap:4px}.product-photo-actions .subtle-button{padding:4px 6px;font-size:11px}}.detail-body>label:not([for])+#product-photo{display:flex!important}.header-actions{gap:14px}.header-action-group{flex:none;align-items:center;gap:2px;display:flex}.delivery-group{border-left:1px solid #d6ddd2;padding-left:14px}.project-title-row{justify-content:space-between}.project-title-row strong{flex:1;min-width:0}.sidebar-info-button{color:#315940;white-space:nowrap;background:#fff;border:1px solid #cbd8c9;border-radius:5px;flex:none;align-items:center;gap:5px;min-height:34px;padding:0 8px;font-size:12px;display:inline-flex}.sidebar-info-button svg{width:15px;height:15px}.sidebar-info-button:hover{background:#edf4eb}@media (width<=1460px){.app-header{gap:8px;padding-left:14px;padding-right:14px}.header-center{font-size:12px}.header-actions{gap:8px}.delivery-group{padding-left:8px}.app-header .mode-button{padding:0 6px;font-size:12px}}@media (width<=1150px){.header-center{display:none}.header-actions{scrollbar-width:thin;min-width:0;overflow-x:auto}.header-action-group{gap:0}.app-header .brand{min-width:150px}}@media (width<=720px){.header-actions{flex:1}.app-header .header-actions .new-project-button span{display:none}.app-header .header-actions .new-project-button svg{display:block}.delivery-group{padding-left:7px}}.brand-logo{object-fit:contain;width:176px;max-width:100%;height:43px;display:block}#ai-background{margin-left:auto}.scene-button{height:auto;min-height:76px!important}.scene-progress{appearance:none;background:#dce5d9;border:0;border-radius:9px;width:100%;height:5px;display:block;overflow:hidden}.scene-progress::-webkit-progress-bar{background:#dce5d9;border-radius:9px}.scene-progress::-webkit-progress-value{background:#6f997d;border-radius:9px}.scene-progress::-moz-progress-bar{background:#6f997d;border-radius:9px}.scene-button.active .scene-progress::-webkit-progress-value{background:#e5c18b}.ai-dialog{border-radius:8px;width:min(650px,100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}.ai-dialog h2{margin:0 0 24px;font-size:23px}.intake-options{border:0;flex-wrap:wrap;gap:12px;margin:0 0 18px;padding:0;display:flex}.intake-options legend{margin-bottom:12px;font-size:14px}.intake-options label{white-space:nowrap;border:1px solid #ccd6ca;border-radius:6px;flex:1;padding:12px}.intake-options label:has(:checked){background:#edf4ed;border-color:#315940}.ai-dialog input[type=file]{max-width:100%;font-size:13px}.ai-confirm-body{flex-direction:column;justify-content:center;min-height:150px;display:flex}.ai-confirm-message{color:#26352b;margin:12px 0;font-size:18px;font-weight:650;line-height:1.65}.ai-progress{background:#f8faf7;border:1px solid #d4dfd1;border-radius:7px;margin:6px 0 2px;padding:14px}.ai-progress-heading{color:#506253;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.ai-progress-heading strong{color:#315940;font-variant-numeric:tabular-nums;font-size:20px}.ai-progress-track{background:#e1e7df;border-radius:999px;height:10px;margin:10px 0;overflow:hidden;box-shadow:inset 0 1px 1px #cbd4c8}.ai-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#315940,#5f8d6f);width:0;height:100%;transition:width .45s linear;display:block}.ai-progress-time{color:#627266;font-variant-numeric:tabular-nums;margin:0;font-size:12px}.ai-image{object-fit:contain;background:#f2f3f1;border-radius:4px;width:100%;max-height:320px;margin-top:16px;display:block}.ai-image[hidden]{display:none}.ai-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.ai-review{color:#795721;font-size:13px;line-height:1.7}.ai-dialog .dialog-status{overflow-wrap:anywhere}.ai-dialog .modal-title{gap:20px}.ai-dialog .dialog-body{padding:22px}.ai-dialog button:disabled{opacity:.5;cursor:wait}@media (width<=720px){.brand-logo{width:130px;height:32px}.ai-dialog .dialog-body{padding:16px}.ai-dialog h2{font-size:20px}.ai-dialog .ai-actions{gap:8px}.ai-dialog .primary-button{white-space:normal;min-height:40px}}.setup-dialog{width:min(900px,100vw - 24px)}.setup-dialog .dialog-body{max-height:70dvh;overflow:auto}.setup-section{border-top:1px solid #dbe2d9;padding:18px 0}.setup-section h3{margin:0 0 14px;font-size:16px}.setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.setup-grid label,.setup-wide{color:#506253;gap:6px;font-size:12px;display:grid}.setup-wide{margin-top:12px}.setup-grid input{min-width:0}.category-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;display:grid}.category-grid label{text-align:center;cursor:pointer;border:1px solid #c9d3c8;border-radius:5px;min-width:0;padding:8px 2px;font-size:12px}.category-grid label:has(:checked){color:#315940;background:#e8f0e5;border-color:#315940}.category-grid input{opacity:0;width:1px;height:1px;position:absolute}.category-grid label:focus-within{outline:2px solid #315940}.category-grid label:has(:disabled){opacity:.9}.setup-scenes{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px;display:grid}.setup-scene{border:1px solid #d6ded5;border-radius:6px;min-width:0;padding:12px}.setup-scene-head{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.setup-scene-head strong{min-width:34px;font-size:13px}.setup-scene-head input{flex:1;min-width:100px}.setup-scene-head button{margin-left:auto}.scene-references{align-items:center;gap:8px;min-width:0;margin-top:10px;display:flex}.scene-references img{object-fit:cover;border-radius:3px;width:65px;height:48px}.scene-references input{flex:1;min-width:0}.scene-references small{font-size:11px}.neighbors{color:#627266;flex-wrap:wrap;gap:8px;margin-top:10px;font-size:11px;display:flex}.neighbors label{white-space:nowrap}.plan-wrap{max-width:690px;max-height:460px;margin:12px auto;position:relative}.plan-wrap img{object-fit:contain;cursor:crosshair;width:100%;max-height:460px;display:block}.plan-dot{color:#fff;white-space:nowrap;background:#315940;border:1px solid #fff;border-radius:4px;padding:5px;font-size:11px;position:absolute;transform:translate(-50%,-50%)}.plan-target{color:#6b756d;align-items:center;gap:12px;font-size:12px;display:flex}.plan-target select{max-width:220px}.image-assignment{gap:8px;margin-top:10px;display:grid}.assignment-row{border:1px solid #d6ded5;border-radius:5px;grid-template-columns:110px 1fr;gap:12px;padding:8px;display:grid}.assignment-row img{object-fit:contain;background:#f0f2ed;width:110px;height:90px}.assignment-row>div{grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) auto auto;align-items:center;gap:8px;display:grid}.assignment-row label{white-space:nowrap;font-size:12px}.asset-upload-section{background:#f8faf7;border-radius:8px;margin-top:18px;padding:18px!important}.asset-upload-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;display:grid}.asset-upload-card{background:#fff;border:1px solid #d6ded5;border-radius:6px;min-width:0;padding:14px}.asset-upload-card h4{margin:0 0 6px;font-size:14px}.asset-upload-card>p{color:#627266;margin:0 0 12px;font-size:12px;line-height:1.6}.asset-upload-card .plan-wrap{max-height:330px;margin:12px auto}.asset-upload-card .plan-wrap img{max-height:330px}.intake-panorama-upload{border-top:1px solid #e1e6df;margin-top:14px;padding-top:13px}.intake-panorama-upload h4{margin:0 0 5px}.intake-panorama-upload p{color:#627266;margin:0 0 9px;font-size:12px;line-height:1.6}.panorama-assignment-row>div{grid-template-columns:minmax(120px,1fr) minmax(140px,1fr) auto}.panorama-assignment-row small{color:#627266;font-size:11px;line-height:1.5}.intake-pano-links{border-top:1px solid #e1e6df;gap:8px;margin-top:14px;padding-top:13px;display:grid}.intake-pano-links>strong{color:#506253;margin-top:4px;font-size:12px}.intake-pano-link-row{grid-template-columns:74px minmax(0,1fr) auto auto;align-items:center;gap:7px;display:grid}.intake-pano-link-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.intake-pano-link-row a{color:#315940;white-space:nowrap;font-size:12px}.whole-home-pano-link{background:#f5f9f4;border:1px solid #cbd9c9;border-radius:5px;padding:9px}.whole-home-pano-link>span{color:#315940;font-weight:700}@media (width<=720px){.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-scenes{grid-template-columns:1fr}.assignment-row{grid-template-columns:80px 1fr;gap:8px}.assignment-row img{width:80px;height:95px}.assignment-row>div{grid-template-columns:1fr 1fr}.assignment-row label{grid-column:1}.panorama-assignment-row>div{grid-template-columns:1fr auto}.panorama-assignment-row small{grid-column:1}.plan-target{flex-wrap:wrap}.setup-dialog .dialog-body{max-height:calc(100dvh - 70px)}.asset-upload-section{padding:14px!important}.asset-upload-grid{grid-template-columns:1fr;gap:12px}.asset-upload-card{padding:12px}.asset-upload-card .plan-wrap,.asset-upload-card .plan-wrap img{max-height:300px}.intake-pano-link-row{grid-template-columns:62px minmax(0,1fr) auto auto;gap:5px}.intake-pano-link-row .text-input{padding:8px;font-size:11px}}.plan-wrap{width:fit-content;max-width:100%}.plan-wrap img{width:auto;max-width:100%}.scene-references{flex-wrap:wrap}.reference-item{align-items:center;gap:6px;width:100%;display:flex}.reference-item img{flex:none}.reference-item input{flex:1}@media (width<=720px){.reference-item{flex-wrap:wrap}.reference-item input{min-width:120px}.setup-scene-head button{margin-left:0}}.plan-mark-entry{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.plan-mark-entry p{color:#627266;flex:1;margin:0;font-size:12px;line-height:1.6}.plan-marker-dialog{width:min(1180px,100vw - 24px);max-height:calc(100dvh - 24px)}.plan-marker-dialog .dialog-body{flex-direction:column;gap:14px;max-height:calc(100dvh - 76px);padding:18px 22px;display:flex;overflow:hidden}.plan-marker-toolbar{justify-content:space-between;align-items:end;gap:18px;display:flex}.plan-marker-toolbar label{color:#506253;gap:6px;min-width:220px;font-size:12px;display:grid}.plan-marker-toolbar p{color:#627266;margin:0 0 8px;font-size:13px;line-height:1.6}.plan-marker-surface{background:#f1f4f0;border:1px solid #d4ddd0;border-radius:6px;flex:1;place-items:center;min-height:0;display:grid;overflow:auto}.plan-marker-dialog .plan-wrap{width:fit-content;max-width:100%;max-height:none;margin:18px auto}.plan-marker-dialog .plan-wrap img{object-fit:contain;cursor:crosshair;width:auto;max-width:100%;max-height:calc(100dvh - 245px);display:block}.plan-marker-dialog .ai-actions{justify-content:flex-end;margin-top:0}@media (width<=720px){.plan-mark-entry{flex-direction:column;align-items:flex-start}.plan-marker-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}.plan-marker-dialog .dialog-body{gap:10px;max-height:calc(100dvh - 64px);padding:12px}.plan-marker-toolbar{flex-direction:column;align-items:stretch;gap:4px}.plan-marker-toolbar label{min-width:0}.plan-marker-toolbar p{margin:0;font-size:12px}.plan-marker-dialog .plan-wrap{margin:10px auto}.plan-marker-dialog .plan-wrap img{max-height:calc(100dvh - 250px)}}#ai-dialog{overscroll-behavior:contain;scrollbar-width:none;width:min(820px,100vw - 32px);max-height:calc(100dvh - 32px);margin:16px auto;overflow:hidden auto}#ai-dialog::-webkit-scrollbar{width:0;height:0}#ai-dialog .dialog-body{max-height:none;overflow:visible}#ai-dialog .ai-image{object-fit:contain;width:100%;height:auto;max-height:none}@media (width<=720px){#ai-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);margin:10px auto}}
