.routing-panel{padding:20px;line-height:1.6}.routing-panel fieldset{border:0;min-width:0;margin:0;padding:0}.routing-panel button{justify-content:center;align-items:center;gap:6px;min-height:44px;display:inline-flex}.routing-provider{border:1px solid var(--line,#d8dee8);border-radius:6px;margin:16px 0;padding:16px}.routing-provider-title{align-items:end;gap:12px;display:flex}.routing-provider-title label{flex:1;min-width:0}.routing-fields,.routing-orders{grid-template-columns:1fr 1fr;gap:16px;margin:16px 0;display:grid}.routing-panel label:not(.routing-check){flex-direction:column;gap:5px;font-size:14px;display:flex}.routing-panel input:not([type=checkbox]),.routing-panel select{width:100%;min-width:0;min-height:44px;color:var(--ink,#17233a);background:var(--paper,#fff);border:1px solid var(--line,#c8d0df);border-radius:4px;padding:8px}.routing-check{align-items:center;gap:8px;min-height:36px;display:flex}.routing-check input{width:18px;height:18px}.routing-help,.routing-provider small{color:var(--muted,#526075);font-size:13px}.routing-error{color:#b42318;overflow-wrap:anywhere}.routing-orders section{min-width:0}.routing-orders h3{font-size:16px}.routing-orders ol{padding:0;list-style:none}.routing-orders li{align-items:center;gap:4px;margin:6px 0;display:flex}.routing-orders li span{overflow-wrap:anywhere;flex:1}.routing-orders li button{min-width:44px}.model-task-history{border-top:1px solid var(--line,#d8dee8);margin-top:16px;font-size:13px;line-height:1.6}.model-task-history summary,.routing-panel summary{cursor:pointer;min-height:44px;font-weight:600}.model-task-history summary{color:var(--ink);align-items:center;gap:8px;display:flex}.model-task-history summary::marker{color:var(--muted)}.model-task-history summary span{color:var(--muted);margin-left:auto;font-size:12px;font-weight:400}.model-task-history summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.model-task-history-content{overscroll-behavior:contain;max-height:38dvh;overflow:auto}.model-task-history-content>p{color:var(--muted)}.model-task-history article{border-top:1px solid var(--line,#d8dee8);padding:12px 0}.model-task-history article span,.model-task-history article small{display:block}.model-task-history article button{min-height:44px}.model-task-history ol{padding-left:24px}@media (width<=640px){.routing-fields,.routing-orders{grid-template-columns:1fr}.routing-panel{padding:12px}.settings-tabs{flex-wrap:wrap}}.routing-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.hosted-admin{color:#213345;max-width:1080px;margin:0 auto;padding:32px 24px 70px}.hosted-admin header,.admin-row{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.hosted-admin header{justify-content:space-between;align-items:center;margin-bottom:28px}.hosted-admin h1{margin:6px 0;font-size:28px}.hosted-admin h2{margin-top:0;font-size:20px}.hosted-admin section{background:#fff;border:1px solid #dce4eb;border-radius:12px;margin-bottom:20px;padding:24px}.hosted-admin p{line-height:1.7}.hosted-admin label{flex-direction:column;gap:8px;margin:12px 0;font-size:14px;display:flex}.hosted-admin input,.hosted-admin select{font:inherit;box-sizing:border-box;background:#fff;border:1px solid #aebdcb;border-radius:6px;max-width:100%;min-height:44px;padding:8px 10px}.hosted-admin button{color:#173c59;cursor:pointer;background:#f2f7fb;border:1px solid #9eb5c8;border-radius:6px;min-height:44px;margin:4px 8px 4px 0;padding:10px 16px}.hosted-admin button:disabled{opacity:.5;cursor:wait}.hosted-admin input:focus-visible,.hosted-admin button:focus-visible,.hosted-admin select:focus-visible{outline-offset:2px;outline:3px solid #81b5e0}.hosted-admin .admin-check{flex-direction:row;align-items:center}.admin-check input{width:22px;min-height:22px}.admin-accounts{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.admin-accounts article{border:1px solid #e0e7ed;border-radius:8px;padding:16px}.hosted-admin pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f5f8;padding:16px;line-height:1.8}.hosted-admin details{overflow-wrap:anywhere;padding:12px 0}.hosted-admin footer{color:#576779;font-size:13px}.hosted-admin small{overflow-wrap:anywhere}@media (width<=600px){.hosted-admin{padding:20px 12px}.hosted-admin section{padding:18px}.admin-row{display:block}.hosted-admin input,.hosted-admin select{width:100%}.hosted-admin .admin-check input{width:22px}.admin-accounts{grid-template-columns:1fr}}.hosted-admin{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.hosted-admin button:active{background:#dcebf7}.hosted-admin input,.hosted-admin select{color:#213345}.hosted-admin footer{padding-bottom:env(safe-area-inset-bottom)}.hosted-admin .admin-nav{z-index:5;scrollbar-width:thin;background:#fff;border-bottom:1px solid #dce4eb;gap:8px;margin:0 0 24px;padding:10px 0;display:flex;position:sticky;top:0;overflow-x:auto}.hosted-admin .admin-nav a{color:#173c59;white-space:nowrap;border-radius:8px;align-items:center;min-height:44px;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.hosted-admin .admin-nav a:hover,.hosted-admin .admin-nav a:focus-visible{outline-offset:2px;background:#e9f2fa;text-decoration:underline}.hosted-admin .admin-group{margin-bottom:32px;scroll-margin-top:84px}.hosted-admin .admin-group-title{color:#596f80;margin:0 0 12px;font-size:17px}.hosted-admin .admin-group section,.hosted-admin .admin-group .admin-disclosure{margin-bottom:12px}.hosted-admin .admin-disclosure,.hosted-admin .admin-secret{background:#fff;border:1px solid #dce4eb;border-radius:12px;padding:20px 24px}.hosted-admin .admin-disclosure summary{cursor:pointer;align-content:center;min-height:44px;font-size:20px;font-weight:650;display:list-item}.hosted-admin .admin-disclosure summary:focus-visible{outline-offset:2px;outline:3px solid #81b5e0}.hosted-admin .admin-secret{background:#f5faff;border-color:#7ba8ca;margin-bottom:12px;scroll-margin-top:84px}.hosted-admin .admin-account-search{max-width:360px;margin-bottom:16px}.hosted-admin .admin-account-search input{width:100%}@media (width<=600px){.hosted-admin .admin-nav{margin:0 -12px 18px;padding:8px 12px}.hosted-admin .admin-nav a{padding:0 10px}.hosted-admin .admin-disclosure,.hosted-admin .admin-secret{padding:16px 18px}}@media (prefers-reduced-motion:no-preference){html:has(.hosted-admin){scroll-behavior:smooth}}.hosted-admin .admin-row .admin-note-input{flex:260px;max-width:420px}.hosted-admin .admin-user-picker{width:100%;margin:12px 0}.hosted-admin .admin-user-picker-fields{grid-template-columns:minmax(220px,1fr) minmax(260px,1.5fr);gap:12px;display:grid}.hosted-admin .admin-user-picker-fields label{min-width:0;margin:0}.hosted-admin .admin-user-picker-fields input,.hosted-admin .admin-user-picker-fields select{width:100%}.hosted-admin .admin-user-search{min-width:0;position:relative}.hosted-admin .admin-user-suggestions{z-index:10;overscroll-behavior:contain;background:#fff;border:1px solid #aebdcb;border-radius:8px;max-height:300px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #19314629}.hosted-admin .admin-user-suggestion{text-align:left;background:#fff;border:0;border-bottom:1px solid #e7edf2;border-radius:0;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:44px;margin:0;padding:10px 12px;display:flex}.hosted-admin .admin-user-suggestion:hover,.hosted-admin .admin-user-suggestion:focus-visible{background:#eef5ff}.hosted-admin .admin-user-suggestion span{color:#576779;overflow-wrap:anywhere;font-size:13px}.hosted-admin .admin-user-suggestions p{color:#576779;margin:0;padding:10px 12px;font-size:13px}.hosted-admin .admin-user-picker-hint{color:#576779;margin-top:8px;display:block}.hosted-admin .admin-user-picker-hint.is-selected{color:#1e5f46;font-weight:600}@media (width<=600px){.hosted-admin .admin-user-picker-fields{grid-template-columns:1fr}}.hosted-admin .admin-upgrade-link{box-sizing:border-box;color:#fff;background:#2459c6;border-radius:6px;justify-content:center;align-items:center;min-height:44px;margin:4px 8px 4px 0;padding:10px 16px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.hosted-admin .admin-upgrade-link:hover,.hosted-admin .admin-upgrade-link:focus-visible{color:#fff;background:#194aa9}.hosted-admin .admin-upgrade-link:focus-visible{outline-offset:2px;outline:3px solid #81b5e0}.hosted-admin .admin-upgrade-section{background:#f8fbff;border-color:#9bb6ee;scroll-margin-top:84px}.hosted-admin .admin-upgrade-section h2{color:#173c59}.hosted-admin .admin-upgrade-section .admin-row>label{flex:220px;min-width:0}.hosted-admin .admin-upgrade-section .admin-row input{width:100%}.hosted-admin .admin-payment-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.hosted-admin .admin-payment-fields label{min-width:0}.hosted-admin .admin-payment-fields input{width:100%}.hosted-admin .admin-payment-fields small{color:#576779;line-height:1.5}.hosted-admin .admin-proof-preview{background:#f7fafc;border:1px solid #dce4eb;border-radius:8px;margin:12px 0;padding:12px}.hosted-admin .admin-proof-preview p{margin:0 0 8px}.hosted-admin .admin-proof-preview img{object-fit:contain;background:#fff;border:1px solid #dce4eb;border-radius:6px;max-width:min(100%,320px);max-height:240px;display:block}@media (width<=600px){.hosted-admin .admin-payment-fields{grid-template-columns:1fr;gap:0}}.hosted-admin .admin-primary-button{color:#fff;background:#2459c6;border-color:#2459c6;font-weight:650}.hosted-admin .admin-primary-button:hover,.hosted-admin .admin-primary-button:focus-visible{color:#fff;background:#194aa9}.hosted-admin .admin-order-review{background:#fff;border:1px solid #7d9de5;border-radius:10px;margin-top:18px;padding:18px}.hosted-admin .admin-order-review h3{margin:0 0 8px;font-size:18px}.hosted-admin .admin-order-review p{overflow-wrap:anywhere}.hosted-admin .admin-order-success{color:#145b39;background:#edf8f1;border:1px solid #9bc8b3;border-radius:8px;padding:14px 16px;font-weight:650}.hosted-admin .admin-account-note{overflow-wrap:anywhere;color:#385269;margin:6px 0 10px}.hosted-admin .admin-account-phone{color:#244b86;margin:6px 0}.hosted-admin .admin-phone-editor{border-top:1px solid #e0e7ed;padding:8px 0 10px}.hosted-admin .admin-phone-editor summary{cursor:pointer;color:#173c59;align-content:center;min-height:40px}.hosted-admin .admin-phone-editor p{color:#576779;margin:4px 0;font-size:13px}.hosted-admin .admin-phone-editor input{width:100%}.hosted-admin .admin-note-editor{border-top:1px solid #e0e7ed;margin-bottom:8px;padding:8px 0 10px}.hosted-admin .admin-note-editor summary{cursor:pointer;color:#173c59;align-content:center;min-height:40px}.hosted-admin .admin-note-editor summary:focus-visible{outline-offset:2px;outline:3px solid #81b5e0}.hosted-admin .admin-note-editor input{width:100%}.hosted-admin .admin-secret-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hosted-admin .admin-secret-actions button{margin:0}.hosted-admin .admin-copy-button{color:#fff;background:#173c59;border-color:#173c59;font-weight:650}.hosted-admin .admin-copy-button:hover,.hosted-admin .admin-copy-button:focus-visible{color:#fff;background:#245778}.hosted-admin .admin-copy-status{color:#1e5f46;margin:10px 0 0;font-weight:600}.hosted-admin .admin-secret-more{color:#526879;border-top:1px solid #dce4eb;margin-top:12px;padding-top:8px}.hosted-admin .admin-secret-more summary{cursor:pointer;align-content:center;min-height:40px}.hosted-admin .admin-secret-more button{margin-top:8px}.hosted-admin.account-quota-page{max-width:760px}.hosted-admin:not(.account-quota-page){max-width:1280px}.hosted-admin .admin-account-section{overflow:hidden}.admin-account-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.admin-account-heading h2{margin-bottom:8px}.admin-account-heading span{color:#576779;white-space:nowrap;font-size:13px}.admin-account-toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin:0 0 14px;display:flex}.hosted-admin .admin-account-toolbar label{margin:0}.hosted-admin .admin-account-toolbar .admin-account-search{flex:300px;max-width:420px}.hosted-admin .admin-account-toolbar .admin-account-filter{flex:0 180px}.hosted-admin .admin-account-toolbar input,.hosted-admin .admin-account-toolbar select{width:100%}.admin-account-table-wrap{border:1px solid #dce4eb;border-radius:8px;overflow-x:auto}.admin-account-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.admin-account-table th{color:#54697b;text-align:left;white-space:nowrap;background:#f5f8fb;border-bottom:1px solid #dce4eb;padding:10px 12px;font-size:12px;font-weight:700}.admin-account-table th:first-child{width:30%}.admin-account-table th:nth-child(2){width:13%}.admin-account-table th:nth-child(3){width:20%}.admin-account-table th:nth-child(4){width:16%}.admin-account-table th:last-child{width:21%}.admin-account-table td{vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #e7edf2;padding:9px 12px}.admin-account-row:hover,.admin-account-row.is-expanded{background:#f7faff}.admin-account-row td:first-child strong{font-size:14px;display:block}.admin-account-row td:first-child small{text-overflow:ellipsis;white-space:nowrap;color:#596f80;font-size:12px;line-height:1.5;display:block;overflow:hidden}.admin-account-row-note{max-width:100%}.admin-account-row td:nth-child(3) strong{white-space:nowrap;font-weight:650}.admin-account-state{color:#31516e;white-space:nowrap;background:#edf3f8;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-block}.admin-account-state.is-trial{color:#2256aa;background:#ebf2ff}.admin-account-state.is-paid{color:#176143;background:#e8f6ef}.admin-account-state.is-disabled,.admin-account-state.is-expired{color:#646b72;background:#f1f2f3}.admin-account-muted{color:#7a8793}.admin-account-actions{white-space:nowrap}.hosted-admin .admin-account-actions button{min-height:38px;margin:0 8px 0 0;padding:6px 11px;font-size:13px}.admin-account-actions a{color:#2459c6;font-size:13px;font-weight:700;text-decoration:none}.admin-account-actions a:hover,.admin-account-actions a:focus-visible{text-decoration:underline}.admin-account-details-row td{background:#f9fbfe;padding:0}.admin-account-details{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:12px 24px;padding:16px 20px;display:grid}.admin-account-grants{grid-column:1/-1}.admin-account-grants ul{margin:8px 0 0;padding:0;list-style:none}.admin-account-grants li{color:#405267;border-top:1px solid #e7edf2;flex-wrap:wrap;gap:10px 20px;padding:6px 0;font-size:13px;display:flex}.admin-account-grants li span:first-child{min-width:80px;font-weight:700}.admin-account-grants p{margin:6px 0}.admin-account-details .admin-phone-editor,.admin-account-details .admin-note-editor{border-top:0;margin:0;padding:0}.admin-account-details .admin-phone-editor summary,.admin-account-details .admin-note-editor summary{font-weight:650}.admin-account-details .admin-phone-editor form,.admin-account-details .admin-note-editor form{max-width:360px}.admin-account-detail-actions{border-top:1px solid #e0e7ed;flex-wrap:wrap;grid-column:1/-1;gap:8px;padding-top:8px;display:flex}.hosted-admin .admin-account-detail-actions button{margin:0}.admin-account-empty{color:#576779;margin:12px 0 0}@media (width<=720px){.admin-account-table-wrap{border:0;overflow:visible}.admin-account-table,.admin-account-table tbody{display:block}.admin-account-table thead{display:none}.admin-account-table tr.admin-account-row{border:1px solid #dce4eb;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;margin:0 0 8px;padding:10px 12px;display:grid}.admin-account-row td{border:0;padding:0}.admin-account-row td:first-child{grid-area:1/1/3}.admin-account-row td:nth-child(2){text-align:right;grid-area:1/2}.admin-account-row td:nth-child(3){grid-area:3/1}.admin-account-row td:nth-child(4){text-align:right;grid-area:3/2;font-size:12px}.admin-account-row td:last-child{grid-area:4/1/auto/-1;padding-top:5px}.admin-account-row td:nth-child(4):before{content:"到期 ";color:#576779}.admin-account-details-row{border:1px solid #dce4eb;border-top:0;border-radius:0 0 8px 8px;margin:-8px 0 8px;display:block}.admin-account-details-row td{border:0;display:block}.admin-account-details{grid-template-columns:1fr;padding:12px}.admin-account-grants,.admin-account-detail-actions{grid-column:1}.hosted-admin .admin-account-toolbar .admin-account-filter{flex:150px}.admin-account-heading{align-items:center}}.account-contact{background:#fafcfd;border-color:#dce4eb;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:18px;display:grid}.account-contact.needs-attention{background:#fffaf7;border-color:#e2d5cd}.account-contact h2{margin:0 0 8px}.account-contact p{color:#405267;margin:6px 0;line-height:1.6}.account-contact button{margin-top:10px}.account-contact .account-contact-preview{cursor:zoom-in;background:0 0;border:0;border-radius:8px;width:120px;max-width:100%;height:auto;margin:0;padding:0;display:block}.account-contact .account-contact-preview:focus-visible{outline-offset:3px;outline:3px solid #3684b5}.account-contact img{border:1px solid #e4e8ef;border-radius:8px;width:120px;max-width:100%;height:auto;display:block}@media (width<=480px){.account-contact{grid-template-columns:minmax(0,1fr) 92px;gap:12px}.account-contact .account-contact-preview,.account-contact img{width:92px}}.personal-quota-summary{overflow:hidden}.personal-quota-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:20px;display:flex}.personal-quota-heading span{color:#576779;font-size:13px}.personal-quota-heading h2{overflow-wrap:anywhere;margin:4px 0 0;font-size:18px;line-height:1.4}.personal-quota-heading .personal-quota-disabled{color:#a43226;white-space:nowrap;background:#fff1ee;border-radius:4px;padding:4px 8px}.personal-quota-heading .personal-quota-member{color:#17603a;white-space:nowrap;background:#eaf6ef;border-radius:4px;padding:4px 8px;font-weight:700}.personal-quota-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.personal-quota-metrics>div{background:#f5f9fc;border:1px solid #dce4eb;border-radius:8px;flex-direction:column;gap:8px;min-width:0;padding:18px 20px;display:flex}.personal-quota-metrics>div>span{color:#526879;font-size:14px}.personal-quota-metrics strong{color:#173c59;font-variant-numeric:tabular-nums;font-size:32px;line-height:1.1}.personal-quota-metrics strong small{color:#526879;margin-left:6px;font-size:14px;font-weight:500}.personal-quota-grants{border-top:1px solid #e0e7ed;margin-top:24px;padding-top:18px}.personal-quota-grants h3{margin:0 0 10px;font-size:15px}.personal-quota-grants ul{margin:0;padding:0;list-style:none}.personal-quota-grants li{border-top:1px solid #eef1f4;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;font-size:13px;display:grid}.personal-quota-kind{color:#345c76;text-align:center;white-space:nowrap;background:#eaf3f9;border-radius:4px;padding:3px 7px}.personal-quota-remaining{color:#213345;min-width:0}.personal-quota-remaining strong{font-variant-numeric:tabular-nums}.personal-quota-grants time{color:#576779;white-space:nowrap}.personal-quota-grants time.expired{color:#a43226}.account-quota-page .personal-account-settings summary{font-size:16px}.account-quota-page .personal-account-settings form{max-width:520px}.account-quota-page footer{border-top:1px solid #dce4eb;margin-top:24px;padding-top:16px;line-height:1.6}@media (width<=600px){.personal-quota-metrics>div{padding:14px}.personal-quota-metrics strong{font-size:28px}.personal-quota-grants li{grid-template-columns:64px minmax(0,1fr);gap:6px 10px}.personal-quota-grants time{white-space:normal;grid-column:2}.personal-quota-heading h2{font-size:16px}}@media (width<=340px){.personal-quota-metrics{grid-template-columns:1fr}}.hosted-admin.account-quota-page{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-content:start;gap:14px 16px;max-width:1120px;padding-top:24px;padding-bottom:32px;display:grid}.account-quota-page>header,.account-quota-page>.admin-secret,.account-quota-page>.hosted-error,.account-quota-page>p,.account-quota-page>.personal-account-settings,.account-quota-page>footer{grid-column:1/-1}.account-quota-page header{margin-bottom:0}.account-quota-page header h1{font-size:26px}.account-quota-page>.personal-quota-summary,.account-quota-page>.account-contact{min-width:0;margin:0;padding:22px}.account-quota-page .personal-quota-heading{margin-bottom:16px}.account-quota-page .personal-quota-metrics>div{gap:5px;padding:14px 16px}.account-quota-page .personal-quota-metrics strong{font-size:30px}.account-quota-page .personal-quota-grants{margin-top:16px;padding-top:12px}.account-quota-page .personal-quota-grants li{padding:9px 0;font-size:14px}.account-quota-page .account-contact{background:#f7fbff;grid-template-columns:minmax(0,1fr) 104px;align-content:start;gap:14px}.account-quota-page .account-contact.needs-attention{background:#fffaf7}.account-quota-page .account-contact h2{margin-bottom:10px}.account-quota-page .account-contact p{margin:0 0 14px;line-height:1.55}.account-quota-page .account-contact button:not(.account-contact-preview){color:#fff;background:#2459c6;border-color:#2459c6;margin:0;font-weight:650}.account-quota-page .account-contact button:not(.account-contact-preview):hover{background:#194aa9}.account-quota-page .account-contact .account-contact-preview,.account-quota-page .account-contact img{width:104px}.account-quota-page .personal-account-settings{margin-top:0;padding:6px 18px}.account-quota-page footer{margin-top:0;padding-top:12px}@media (width<=900px){.hosted-admin.account-quota-page{grid-template-columns:minmax(0,1fr)}.account-quota-page .account-contact{grid-template-columns:minmax(0,1fr) 104px}}@media (width<=600px){.hosted-admin.account-quota-page{padding:16px 12px 28px}.account-quota-page header h1{font-size:24px}.account-quota-page>.personal-quota-summary,.account-quota-page>.account-contact{padding:18px}.account-quota-page .personal-quota-grants li{grid-template-columns:64px minmax(0,1fr)}.account-quota-page .personal-quota-grants time{grid-column:2}}@media (width<=480px){.account-quota-page .account-contact{grid-template-columns:minmax(0,1fr) 82px;gap:10px}.account-quota-page .account-contact .account-contact-preview,.account-quota-page .account-contact img{width:82px}}.password-field{gap:6px;margin:20px 0 0;font-weight:600;display:grid}.hosted-admin .password-field{margin:12px 0;font-size:14px}.password-control{width:100%;display:block;position:relative}.password-control input{padding-right:52px!important}.password-toggle{cursor:pointer;place-items:center;top:1px;right:1px;color:#465c53!important;background:0 0!important;border:0!important;border-left:1px solid #d3dcd7!important;border-radius:0 7px 7px 0!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;display:grid!important;position:absolute!important}.password-toggle:hover{background:#eef3f0!important}.password-toggle:active{background:#e1ebe6!important}.hosted-admin .admin-analytics-section{background:#f8fbff;border-color:#cbd9e8}.analytics-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.analytics-heading h2{color:#173c59;margin:3px 0 7px;font-size:24px}.analytics-heading p{color:#526879;margin:0}.analytics-heading .analytics-kicker{color:#2459c6;letter-spacing:.08em;font-size:13px;font-weight:700}.analytics-actions{flex-wrap:wrap;align-items:end;gap:6px;display:flex}.analytics-actions label{margin:0 6px 0 0}.analytics-actions select{min-width:120px}.analytics-actions button{margin:0}.analytics-meta{color:#526879;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:18px 0 12px;font-size:13px;display:flex}.analytics-meta .is-healthy{color:#176143}.analytics-meta .is-unknown{color:#855b28}.analytics-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.analytics-metric{background:#fff;border:1px solid #d9e4ef;border-radius:10px;flex-direction:column;gap:7px;min-width:0;min-height:110px;padding:16px;display:flex}.analytics-metric>span{color:#526879;font-size:13px}.analytics-metric strong{color:#173c59;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:24px;line-height:1.15}.analytics-metric small{color:#5b6f80;font-size:12px;line-height:1.45}.analytics-lower{grid-template-columns:minmax(0,1.55fr) minmax(250px,1fr);gap:12px;margin-top:12px;display:grid}.analytics-trend-panel,.analytics-account-panel{background:#fff;border:1px solid #d9e4ef;border-radius:10px;min-width:0;padding:18px}.analytics-section-label{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.analytics-section-label h3{margin:0;font-size:16px}.analytics-section-label p{color:#667b8d;margin:0;font-size:12px}.analytics-legend{color:#526879;flex-wrap:wrap;gap:12px;margin:12px 0;font-size:12px;display:flex}.analytics-legend span{align-items:center;gap:5px;display:inline-flex}.analytics-legend i{border-radius:2px;width:9px;height:9px}.analytics-trend{border-bottom:1px solid #c9d6e2;align-items:end;gap:3px;height:150px;padding-top:10px;display:flex}.analytics-trend-day{flex-direction:column;flex:1 1 0;justify-content:end;align-items:center;min-width:0;height:100%;display:flex}.analytics-trend-bars{justify-content:center;align-items:end;gap:2px;width:100%;height:118px;display:flex}.analytics-trend-bars i{border-radius:2px 2px 0 0;width:min(29%,11px);display:block}.analytics-trend-day>span{color:#667b8d;white-space:nowrap;min-height:20px;margin-top:6px;font-size:10px;display:block}.analytics-trend .is-registration,.analytics-legend .is-registration{background:#87a7d6}.analytics-trend .is-active,.analytics-legend .is-active{background:#2459c6}.analytics-trend .is-image,.analytics-legend .is-image{background:#60a693}.analytics-today{color:#40566d;margin:12px 0 0;font-size:13px}.analytics-account-panel dl{margin:12px 0 0}.analytics-account-panel dl>div{border-bottom:1px solid #edf1f5;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.analytics-account-panel dt{color:#526879;font-size:13px}.analytics-account-panel dd{color:#173c59;font-variant-numeric:tabular-nums;margin:0;font-weight:700}.analytics-account-panel>p{color:#667b8d;margin:12px 0 0;font-size:12px}.hosted-admin .analytics-daily-details{background:#fff;border:1px solid #d9e4ef;border-radius:10px;margin-top:16px;padding:0}.analytics-daily-details summary{cursor:pointer;color:#173c59;box-sizing:border-box;min-height:44px;padding:14px 18px;font-weight:650}.analytics-daily-details summary:focus-visible{outline-offset:2px;outline:3px solid #81b5e0}.analytics-table-scroll{overscroll-behavior:contain;max-height:500px;overflow:auto}.analytics-daily-details table{border-collapse:collapse;white-space:nowrap;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.analytics-daily-details caption{text-align:left;color:#667b8d;padding:8px 14px}.analytics-daily-details th,.analytics-daily-details td{text-align:right;border-top:1px solid #e6edf3;padding:9px 10px}.analytics-daily-details th:first-child,.analytics-daily-details td:first-child{text-align:left;background:#fff;position:sticky;left:0}.analytics-daily-details th{color:#385269;background:#f1f6fb;position:sticky;top:0}.analytics-daily-details th:first-child{z-index:2;background:#f1f6fb}.analytics-footnotes{color:#526879;margin-top:14px;font-size:12px}.analytics-footnotes p{margin:5px 0;line-height:1.6}@media (width<=850px){.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-lower{grid-template-columns:1fr}}@media (width<=520px){.analytics-heading h2{font-size:21px}.analytics-actions{width:100%}.analytics-actions label{flex:100%}.analytics-actions select{width:100%}.analytics-metric{min-height:105px;padding:13px}.analytics-metric strong{font-size:21px}.analytics-trend-day>span{font-size:9px}.analytics-trend-day:nth-child(2n)>span{visibility:hidden}.analytics-trend-panel,.analytics-account-panel{padding:14px}}.hosted-login{color:#263b36;background:#f5f4ef;place-items:center;min-height:100dvh;padding:24px;font:16px/1.6 system-ui,sans-serif;display:grid}.hosted-login *{box-sizing:border-box}.hosted-login section{background:#fff;border:1px solid #dedfd8;border-radius:20px;width:min(100%,440px);padding:36px}.hosted-login h1{margin:12px 0;font-size:26px;line-height:1.3}.hosted-eyebrow{color:#426052;font-size:14px}.hosted-login label{gap:6px;margin:20px 0 0;font-weight:600;display:grid}.hosted-login input{width:100%;min-width:0;height:46px;font:inherit;border:1px solid #88978f;border-radius:8px;padding:0 12px}.hosted-login button,.hosted-account button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#244e40;border:0;border-radius:8px;padding:10px 20px}.hosted-login form>button{width:100%;margin-top:24px}.hosted-login :focus-visible,.hosted-account :focus-visible{outline-offset:3px;outline:3px solid #3684b5}.hosted-login button:disabled{opacity:.65;cursor:wait}.hosted-error{color:#a32222}.hosted-help{color:#596960;margin-top:24px;font-size:14px}.hosted-account{background:#eef2ed;justify-content:flex-end;align-items:center;gap:16px;padding:6px 20px;font:14px/1.5 system-ui,sans-serif;display:flex}@media (width<=480px){.hosted-login section{padding:24px}.hosted-login h1{font-size:23px}}.hosted-account{flex-wrap:wrap}.hosted-account button:active,.hosted-login button:active{filter:brightness(.9)}.hosted-quota-notice{color:#24443c;background:#f2f7f5;border-bottom:1px solid #d7e2df;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;font:14px/1.55 system-ui,sans-serif;display:flex}.hosted-quota-notice.ended{color:#693a31;background:#fff6f3;border-color:#ead3cc}.hosted-quota-notice>div{align-items:baseline;gap:10px;min-width:0;display:flex}.hosted-quota-notice strong{white-space:nowrap}.hosted-quota-notice span{min-width:0}.hosted-quota-notice button{min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:8px;flex:none;padding:8px 14px;font-weight:650}.hosted-quota-notice button:focus-visible{outline-offset:2px;outline:3px solid #3684b5}@media (width<=700px){.hosted-quota-notice{flex-direction:column;align-items:stretch;gap:10px}.hosted-quota-notice>div{flex-direction:column;align-items:flex-start;gap:3px}.hosted-quota-notice button{align-self:flex-start}}.hosted-login .remember-login{cursor:pointer;align-items:flex-start;gap:10px;margin-top:18px;font-weight:600;display:flex}.hosted-login .remember-login input{accent-color:#244e40;flex:none;width:18px;min-width:18px;height:18px;margin:4px 0 0}.hosted-login .remember-login small{color:#596960;margin-top:2px;font-size:12px;font-weight:400;line-height:1.5;display:block}.hosted-login .remember-login+button{margin-top:18px}.hosted-login-public{color:#252a32;background:#f8f9fb;min-height:100dvh;padding:0;display:block}.hosted-public-shell{max-width:1180px;margin:auto;padding:0 32px}.hosted-public-header{border-bottom:1px solid #dce2ea;justify-content:space-between;align-items:center;gap:16px;min-height:76px;display:flex}.hosted-public-brand{white-space:nowrap;align-items:center;gap:10px;font-size:18px;display:flex}.hosted-public-brand strong{font-weight:650}.hosted-public-brand span{color:#87909e;margin:0 6px}.hosted-public-brand small{color:#5c6572;font-size:14px}.hosted-public-badge{color:#375db2;background:#eff4ff;border:1px solid #d7e1f4;border-radius:999px;padding:5px 12px;font-size:13px}.hosted-public-grid{grid-template-columns:minmax(0,1fr) minmax(360px,440px);grid-template-areas:"intro auth""features auth""actions auth";align-items:start;gap:28px 36px;padding:50px 0 24px;display:grid}.hosted-public-intro{grid-area:intro;max-width:680px}.hosted-public-eyebrow{color:#355fb5;letter-spacing:3px;margin:0 0 14px;font-size:13px}.hosted-public-intro h1{letter-spacing:-1px;margin:0;font-size:clamp(32px,3.2vw,42px);font-weight:650;line-height:1.3}.hosted-public-intro>p:last-child{color:#5c6572;max-width:580px;margin:18px 0 0;font-size:16px;line-height:1.75}.hosted-public-features{grid-area:features;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.hosted-feature{background:#fff;border:1px solid #dce2ea;border-radius:14px;min-width:0;padding:20px}.hosted-feature.is-upcoming{opacity:.62}.hosted-feature-heading{color:#596474;align-items:center;gap:8px;font-size:13px;display:flex}.hosted-feature-heading svg{color:#4266a5}.hosted-feature-status{color:#364152;white-space:nowrap;background:#f4f6f9;border:1px solid #cbd3de;border-radius:999px;margin-left:auto;padding:3px 8px;font-size:11px;font-weight:700}.hosted-feature h2{margin:16px 0 8px;font-size:19px;line-height:1.4}.hosted-feature p{color:#5c6572;margin:0;font-size:13px;line-height:1.65}.hosted-feature ol{color:#5c6572;flex-wrap:wrap;gap:5px 8px;margin:16px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.hosted-feature li:not(:last-child):after{content:"›";color:#929ba8;margin-left:8px}.hosted-login-public .hosted-auth-card{border-color:#dce2ea;border-radius:16px;grid-area:auth;width:100%;padding:28px;box-shadow:0 14px 42px #20314e12}.hosted-card-eyebrow{color:#355fb5;margin:0;font-size:13px;font-weight:650}.hosted-login-public .hosted-auth-card h2{margin:7px 0 0;font-size:26px;line-height:1.35}.hosted-card-description{color:#5c6572;margin:8px 0 4px;font-size:14px;line-height:1.6}.hosted-login-public .hosted-auth-card label{margin-top:18px}.hosted-login-public .hosted-auth-card input:not([type=checkbox]){border-color:#a9b4c5}.hosted-login-public .hosted-auth-card form>button{background:#252a32;margin-top:18px}.hosted-login-public .remember-login{margin-top:16px}.hosted-login-public .remember-login input{accent-color:#355fb5}.hosted-card-help{color:#5c6572;border-top:1px solid #e6ebf2;flex-wrap:wrap;align-items:center;column-gap:8px;margin-top:20px;padding-top:18px;font-size:14px;display:flex}.hosted-login-public .hosted-card-help button{color:#2851a4;text-underline-offset:3px;background:0 0;border:0;min-height:44px;padding:4px 0;font-weight:650;text-decoration:underline}.hosted-card-help small{color:#697483;width:100%;margin-top:0;font-size:12px;display:block}.hosted-public-footer{color:#697483;border-top:1px solid #dce2ea;padding:16px 0 24px;font-size:13px}.hosted-contact-dialog{color:#252a32;text-align:center;border:1px solid #dce2ea;border-radius:16px;width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);padding:22px;box-shadow:0 24px 80px #0f1e3c33}.hosted-contact-dialog::backdrop{background:#121b2a8c}.hosted-contact-close{justify-content:flex-end;display:flex}.hosted-login .hosted-contact-close button{color:#465367;background:0 0;min-height:40px;padding:4px 8px}.hosted-contact-dialog h2{margin:2px 0 6px;font-size:24px}.hosted-contact-dialog p{color:#5c6572;margin:6px 0 12px;font-size:14px;line-height:1.6}.hosted-contact-dialog img{border:1px solid #e4e8ef;border-radius:8px;width:min(100%,270px);height:auto;margin:0 auto;display:block}.hosted-contact-dialog .hosted-contact-mobile-tip{margin:10px 0 6px}.hosted-contact-dialog a{color:#2851a4;justify-content:center;align-items:center;min-height:44px;font-size:14px;display:inline-flex}.hosted-login-public :focus-visible{outline-offset:3px;outline:3px solid #3684b5}@media (width<=959px){.hosted-public-shell{max-width:680px;padding:0 20px}.hosted-public-header{min-height:62px}.hosted-public-grid{grid-template-columns:1fr;grid-template-areas:"intro""auth""features""actions";gap:20px;padding:26px 0 24px}.hosted-public-intro h1{font-size:clamp(27px,6vw,34px)}.hosted-public-intro>p:last-child{margin-top:10px;font-size:14px;line-height:1.6}.hosted-public-features{gap:12px}.hosted-feature{padding:16px}}@media (width<=520px){.hosted-public-shell{padding:0 16px}.hosted-public-brand{gap:7px;font-size:16px}.hosted-public-brand small,.hosted-public-badge{font-size:12px}.hosted-public-grid{gap:16px;padding-top:20px}.hosted-public-eyebrow{letter-spacing:2px;margin-bottom:7px;font-size:11px}.hosted-public-intro h1{font-size:27px}.hosted-public-intro>p:last-child{font-size:13px}.hosted-login-public .hosted-auth-card{padding:22px}.hosted-login-public .hosted-auth-card h2{font-size:23px}.hosted-public-features{grid-template-columns:1fr}.hosted-feature h2{margin-top:10px;font-size:18px}.hosted-feature ol{margin-top:10px}}.hosted-action-row{grid-area:actions;grid-template-columns:minmax(0,1fr) 180px;gap:12px;display:grid}.hosted-trial-entry{background:#f0f5ff;border:1px solid #d7e1f4;border-radius:14px;min-width:0;padding:18px 20px}.hosted-trial-entry strong{color:#224b99;font-size:16px}.hosted-trial-entry p{color:#48576d;margin:5px 0 12px;font-size:13px}.hosted-trial-entry button{background:#245bd1;font-weight:650}.hosted-trial-entry button:disabled{background:#64748b}.hosted-code-row{align-items:end;gap:10px;display:flex}.hosted-code-row label{flex:1;min-width:0}.hosted-code-row button{color:#244d9b;background:#eaf1ff;flex:none;min-height:46px;padding:8px 10px;font-size:13px}.hosted-sms-notice{color:#236344;font-size:13px}@media (width<=520px){.hosted-action-row{grid-template-columns:1fr;gap:10px}.hosted-trial-entry{padding:14px}.hosted-code-row button{font-size:12px}}.hosted-public-header-actions{align-items:center;gap:14px;display:flex}.hosted-login-public .hosted-contact-link{color:#2851a4;background:0 0;min-height:44px;padding:5px 0;font-size:14px;font-weight:650}.hosted-contact-entry{color:#375db2;background:#fff;border:1px solid #d7e1f4;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;padding:8px;font-size:12px;font-weight:650;display:flex}.hosted-login-public .hosted-contact-entry .hosted-wechat-preview{cursor:zoom-in;background:0 0;border:0;border-radius:7px;min-height:0;padding:0;display:block}.hosted-contact-entry img{object-fit:contain;background:#fff;border:1px solid #d7e1f4;border-radius:7px;width:88px;height:112px;display:block}@media (width<=520px){.hosted-public-header-actions{gap:8px}.hosted-login-public .hosted-contact-link{font-size:12px}.hosted-contact-entry{flex-direction:row;gap:12px}.hosted-contact-entry img{width:68px;height:88px}}@media (width>=960px){.hosted-public-header{min-height:60px}.hosted-public-grid{row-gap:12px;padding:16px 0 12px}.hosted-login-public .hosted-auth-card{padding:20px}.hosted-login-public .hosted-auth-card h2{margin-top:4px;font-size:23px}.hosted-login-public .hosted-auth-card label,.hosted-login-public .hosted-auth-card .password-field{margin-top:12px}.hosted-login-public .hosted-auth-card input:not([type=checkbox]){height:42px}.hosted-login-public .remember-login{margin-top:12px}.hosted-login-public .remember-login small{display:none}.hosted-login-public .hosted-auth-card form>button{margin-top:12px}.hosted-card-help{margin-top:12px;padding-top:8px}.hosted-feature{padding:12px}.hosted-feature h2{margin:10px 0 5px;font-size:17px}.hosted-feature ol{margin-top:8px}.hosted-public-footer{padding:8px 0 12px}}.hosted-auth-stack{flex-direction:column;grid-area:auth;gap:12px;min-width:0;display:flex}.hosted-auth-stack .hosted-auth-card{grid-area:auto}.hosted-login-public .hosted-auth-card-primary{background:linear-gradient(155deg,#f2f6ff 0%,#fff 58%);border-color:#c6d4ed;box-shadow:0 20px 50px #2139671c}.hosted-login-public .hosted-auth-card-primary .hosted-card-eyebrow{letter-spacing:.4px;font-size:12px}.hosted-login-public .hosted-auth-card-primary h2{color:#1c2d4e}.hosted-login-public .hosted-auth-card-primary input:not([type=checkbox]){background:#fff}.hosted-login-public .hosted-auth-card-primary form>button{background:#2b57ac}.hosted-login-continuity{color:#fff;background:linear-gradient(120deg,#223a60,#304f80);border-radius:16px;align-items:center;gap:15px;min-height:108px;padding:17px 20px;display:flex;box-shadow:0 12px 28px #1d345d21}.hosted-login-continuity-mark{background:#ffffff1f;border:1px solid #ffffff5c;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.hosted-login-continuity strong{font-size:15px;font-weight:650;display:block}.hosted-login-continuity p{color:#e0e8f5;margin:5px 0 0;font-size:12px;line-height:1.5}@media (width<=959px){.hosted-login-continuity{display:none}}@media (width<=520px){.hosted-login-continuity{min-height:0;padding:15px}.hosted-login-continuity-mark{width:38px;height:38px}}.workflow-view{display:contents}.workflow-view[hidden]{display:none!important}.workflow-home-link{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;display:flex}.proposal-home{background:var(--canvas);min-height:100vh;color:var(--ink)}.home-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;max-width:1248px;margin:auto;padding:24px 48px;display:flex}.home-brand{color:var(--ink);align-items:center;gap:12px;font-size:18px;font-weight:650;text-decoration:none;display:flex}.home-brand small{color:var(--muted);font-size:14px;font-weight:400}.home-brand-divider{color:var(--control-line);margin:0 14px;font-weight:400}.home-header-actions{align-items:center;gap:20px;display:flex}.home-history,.home-resume button{min-height:44px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:flex}.home-history>span{color:var(--muted)}.proposal-home .home-main{max-width:1152px;margin:0 auto;padding:56px 48px 28px}.home-eyebrow{color:var(--accent-ink);letter-spacing:4px;margin:0 0 18px;font-size:13px}.home-intro h1{letter-spacing:-1.5px;margin:0;font-size:clamp(32px,3.5vw,48px);font-weight:600;line-height:1.35}.home-description{color:var(--muted);margin:18px 0 0;font-size:16px;line-height:1.8}.home-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px;display:grid}.home-entry{border:1px solid var(--line);background:var(--paper);border-radius:14px;overflow:hidden}.home-entry.is-upcoming{opacity:.62}.home-entry-top{color:var(--muted);justify-content:space-between;align-items:center;padding:22px 26px 0;font-size:13px;display:flex}.home-entry-top>span:first-child{align-items:center;gap:8px;display:flex}.home-entry-top>span:last-child{font-variant-numeric:tabular-nums}.home-entry-status{border:1px solid var(--control-line);background:var(--surface);color:var(--ink);letter-spacing:.04em;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:650}.home-illustration{height:182px;color:var(--muted);margin:8px 16px 0;position:relative}.home-illustration svg{stroke:currentColor;stroke-width:1.6px;width:100%;height:155px}.home-illustration .fine{stroke-width:.8px}.home-illustration .plan-fill{fill:var(--surface)}.home-illustration .light-beam{fill:var(--warning-soft);stroke:none}.home-illustration>span{color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.home-illustration>span svg{width:14px;height:14px}.home-entry-copy{padding:20px 26px 26px}.home-entry h2{letter-spacing:-.5px;margin:0 0 12px;font-size:24px;font-weight:600}.home-entry-copy>p{color:var(--muted);min-height:51px;margin:0;font-size:14px;line-height:1.8}.home-steps{color:var(--muted);flex-wrap:wrap;gap:8px;margin:22px 0 26px;padding:0;font-size:12px;list-style:none;display:flex}.home-steps li{align-items:center;gap:8px;display:flex}.home-steps li:not(:last-child):after{content:"›";color:var(--muted)}.home-entry-action{border:1px solid var(--ink);background:var(--ink);width:100%;min-height:48px;color:var(--paper);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:600;transition:background .16s,border-color .16s;display:flex}.home-entry-action:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.home-entry-action:disabled{opacity:.55;cursor:wait}.home-entry-action.is-upcoming:disabled{opacity:1;border-color:var(--control-line);background:var(--surface);color:var(--muted);cursor:not-allowed}.home-history:hover,.home-resume button:hover,.workflow-home-link:hover{background:var(--hover)}.proposal-home button:focus-visible,.proposal-home a:focus-visible,.workflow-home-link:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.home-resume{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:18px 0;display:flex}.home-resume strong{color:var(--ink);overflow-wrap:anywhere}.home-footer{color:var(--muted);justify-content:space-between;gap:16px;margin-top:28px;font-size:12px;display:flex}@media (width<=700px){.home-header{flex-wrap:wrap;padding:16px 20px}.home-header-actions{justify-content:space-between;gap:12px;width:100%}.proposal-home .home-main{padding:32px 20px 24px}.home-entry-grid{grid-template-columns:1fr;gap:20px;margin-top:28px}.home-entry-copy{padding:20px}.home-entry-copy>p{min-height:0}.home-steps{gap:6px}.home-footer,.home-resume{flex-direction:column;align-items:flex-start}}@media (width>=701px) and (width<=1100px){.home-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.home-entry-action{transition:none}}@media (width>=701px){.home-header{padding:12px 32px}.proposal-home .home-main{max-width:1152px;padding:20px 32px 16px}.home-eyebrow{margin-bottom:8px;font-size:12px}.home-intro h1{letter-spacing:-1px;font-size:clamp(28px,2.7vw,36px);line-height:1.3}.home-intro h1 br{display:none}.home-description{margin-top:8px;font-size:14px;line-height:1.6}.home-entry-grid{gap:20px;margin-top:18px}.home-entry{flex-direction:column;display:flex}.home-entry-top{padding:14px 20px 0}.home-illustration{height:clamp(76px,14vh,136px);margin:6px 12px 0}.home-illustration>svg{height:calc(100% - 20px)}.home-entry-copy{flex-direction:column;flex:1;padding:12px 20px 16px;display:flex}.home-entry h2{margin-bottom:8px;font-size:22px}.home-entry-copy>p{min-height:0;line-height:1.6}.home-steps{margin:12px 0 16px}.home-entry-action{margin-top:auto}.home-resume{margin-top:8px;padding:10px 0}.home-footer{margin-top:14px}}@media (width>=701px) and (height<=750px){.proposal-home .home-main{padding-top:12px;padding-bottom:12px}.home-illustration{height:clamp(64px,100vh - 600px,112px)}.home-entry-grid{margin-top:12px}.home-entry-top{padding-top:10px}.home-entry-copy{padding-top:8px;padding-bottom:12px}.home-steps{margin:8px 0 12px}.home-resume{margin-top:4px;padding:8px 0}.home-footer{margin-top:10px}}@media (width<=700px){.home-header{gap:8px;padding:12px 20px}.proposal-home .home-main{padding-top:20px}.home-eyebrow{margin-bottom:8px}.home-intro h1{font-size:28px;line-height:1.3}.home-description{margin-top:10px;font-size:14px;line-height:1.6}.home-entry-grid{margin-top:20px}.home-entry-top{padding:14px 18px 0}.home-illustration{height:88px;margin-top:4px}.home-illustration>svg{height:64px}.home-entry-copy{padding:12px 18px 18px}.home-entry h2{margin-bottom:8px;font-size:22px}.home-steps{margin:12px 0 14px}}:root{color:var(--ink);background:var(--surface);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:0;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);background:var(--paper);z-index:20;-webkit-backdrop-filter:none;backdrop-filter:none;justify-content:space-between;align-items:center;height:72px;padding:0 42px;display:flex;position:sticky;top:0}.brand,.brand>div,.top-actions,.cloud-status,.icon-button,.card-header>div,.modal header,.settings-status,.modal footer{align-items:center;display:flex}.brand{gap:12px}.brand-mark{width:38px;height:38px;color:var(--on-accent);background:var(--accent);box-shadow:none;border-radius:4px;place-items:center;display:grid}.brand>div:last-child{flex-direction:column;align-items:flex-start;gap:2px}.brand strong{letter-spacing:.02em;font-size:16px}.brand span{color:var(--muted);font-size:12px}.top-actions{gap:12px}.cloud-status{color:var(--warning);background:var(--warning-soft);border-radius:4px;gap:7px;padding:8px 11px;font-size:12px;font-weight:550}.cloud-status.online{color:var(--success);background:var(--success-soft)}.icon-button{border:1px solid var(--control-line);color:var(--ink);background:var(--paper);border-radius:4px;gap:7px;padding:9px 12px}.install-button{color:var(--ink);border-color:var(--control-line);background:var(--surface)}main{width:min(1480px,100% - 70px);margin:0 auto;padding:46px 0 70px}.hero{justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.hero p{max-width:750px;color:var(--muted);margin:0;font-size:15px;line-height:1.7}.eyebrow{color:var(--muted);letter-spacing:.13em;font-size:12px;font-weight:550}.run-button{min-width:150px;height:48px;color:var(--on-accent);background:var(--accent);box-shadow:none;border:0;border-radius:4px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:550;display:inline-flex}.feedback{border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:12px 15px;font-size:14px;display:flex}.feedback.success{color:var(--success);background:var(--success-soft);border:1px solid var(--success-line)}.feedback.error{color:var(--error);background:var(--error-soft);border:1px solid var(--error-line)}.feedback button{height:32px;color:inherit;background:var(--paper);border:1px solid;border-radius:4px;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:550;display:inline-flex}.project-card{border:1px solid var(--line);background:var(--paper);box-shadow:none;border-radius:4px;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:34px;padding:18px;display:grid}.floor-structure{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:14px}.floor-structure-heading,.floor-structure-heading>div,.floor-mode-switch,.floor-manager-actions,.floor-safety-note{align-items:center;display:flex}.floor-structure-heading{justify-content:space-between;gap:14px}.floor-structure-heading>div:first-child{gap:9px}.floor-structure-heading span{gap:2px;display:grid}.floor-structure-heading strong{color:var(--ink);font-size:14px}.floor-structure-heading small,.floor-single-note,.floor-safety-note,.floor-tabs button small{color:var(--muted);font-size:12px;line-height:1.5}.floor-mode-switch{border:1px solid var(--control-line);background:var(--paper);border-radius:4px;gap:4px;padding:3px}.floor-mode-switch button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:3px;padding:0 14px;font-size:13px}.floor-mode-switch button.selected{color:var(--on-accent);background:var(--track)}.floor-single-note{margin:11px 0 0 27px}.floor-manager{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.floor-tabs{gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.floor-tabs button{border:1px solid var(--control-line);min-width:120px;min-height:58px;color:var(--ink);background:var(--paper);text-align:left;border-radius:4px;justify-items:start;gap:2px;padding:9px 12px;display:grid}.floor-tabs button.selected{border-color:var(--track);box-shadow:inset 0 -3px 0 var(--track)}.floor-tabs button strong{font-size:13px}.floor-manager-actions{flex-wrap:wrap;gap:8px;margin-top:8px}.floor-manager-actions label{color:var(--muted);font-size:12px}.floor-manager-actions input{width:130px;min-height:42px}.floor-manager-actions button{border:1px solid var(--control-line);min-height:42px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:5px;padding:0 11px;font-size:12px;display:inline-flex}.floor-manager-actions button.danger{color:var(--danger)}.floor-safety-note{border:1px solid var(--line);color:var(--muted);background:var(--paper);border-radius:4px;gap:6px;margin:11px 0 0;padding:8px 10px}.floor-safety-note svg{flex:none}.floor-safety-note span,.config-column{min-width:0}.config-grid{grid-template-columns:1fr 180px 1.35fr 1fr 1fr;gap:12px;min-width:0;display:grid}.field{min-width:0}.field label,.modal>label{color:var(--muted);margin:0 0 7px;font-size:12px;font-weight:550;display:block}.field label small{color:var(--muted);margin-left:6px;font-size:12px;font-weight:550}.field>small{color:var(--muted);margin-top:6px;font-size:12px;display:block}.style-keywords-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 10px;display:flex}.style-keywords-footer small{color:var(--muted);font-size:12px;line-height:1.5}.style-keywords-reset{min-height:44px;color:var(--ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:0 6px;font-size:12px;text-decoration:underline}.style-keywords-reset:disabled{opacity:.45;cursor:default}.custom-prompt-field,.designer-custom-prompt-field{grid-column:1/-1}.custom-prompt-field textarea,.designer-custom-prompt-field textarea{min-height:82px;font-size:12px}.field input[readonly]{border-color:var(--control-line);color:var(--ink);background:var(--surface);cursor:not-allowed}.project-isolation-note{border:1px solid var(--line);color:var(--ink);background:var(--surface);border-radius:4px;align-items:center;gap:7px;margin-top:10px;padding:8px 10px;font-size:12px;line-height:1.5;display:flex}.project-isolation-note svg{flex:none}.mode-section{border-top:1px solid var(--line);grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);grid-template-areas:"mode-heading step-heading""mode-cards step-grid""review-mode step-grid";align-items:start;gap:8px 18px;min-width:0;padding-top:16px;display:grid}.mode-heading{grid-area:mode-heading;justify-content:space-between;align-items:flex-start;gap:10px;min-height:35px;display:flex}.mode-heading>div{flex-direction:column;gap:3px;min-width:0;display:flex}.mode-heading strong{font-size:12px}.mode-heading span,.mode-heading small{color:var(--muted);font-size:12px}.mode-heading small{color:var(--ink);background:var(--surface);border-radius:4px;flex:none;padding:4px 7px;font-weight:550}.mode-cards{grid-area:mode-cards;grid-template-columns:1fr 1fr;gap:8px;display:grid}.mode-card{border:1px solid var(--control-line);text-align:left;min-width:0;color:var(--ink);background:var(--paper);border-radius:4px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px;display:flex}.mode-card:hover{border-color:var(--control-line)}.mode-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.mode-card.locked{color:var(--muted);background:var(--paper);border-style:dashed}.mode-card.locked:hover{border-color:var(--control-line)}.mode-card strong{font-size:12px}.mode-card span,.mode-card small{white-space:nowrap;text-overflow:ellipsis;max-width:100%;color:var(--muted);font-size:12px;overflow:hidden}.mode-card small{color:var(--ink)}.review-mode-switch{border:1px solid var(--line);background:var(--track);border-radius:11px;grid-area:review-mode;grid-template-columns:1fr;gap:4px;padding:4px;display:grid}.review-mode-switch>.review-mode-lock{border:1px solid var(--line);min-width:0;min-height:45px;color:var(--ink);background:var(--thumb);box-shadow:none;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex}.review-mode-switch>.review-mode-lock>svg{flex:none}.review-mode-switch>.review-mode-lock>span{flex-direction:column;gap:2px;min-width:0;display:flex}.review-mode-switch>button{text-align:left;min-width:0;min-height:45px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex}.review-mode-switch>button:hover{color:var(--ink);background:var(--thumb)}.review-mode-switch>button.selected{border-color:var(--accent);color:var(--accent-ink);background:var(--thumb);box-shadow:none}.review-mode-switch>button>svg{flex:none}.review-mode-switch>button>span{flex-direction:column;gap:2px;min-width:0;display:flex}.review-mode-switch strong,.review-mode-switch small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.review-mode-switch strong{font-size:12px}.review-mode-switch small{color:var(--muted);font-size:12px}.output-step-heading{grid-area:step-heading;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.output-step-heading strong{flex:none;font-size:12px}.output-step-heading span{text-align:right;color:var(--muted);font-size:12px;line-height:1.4}.output-step-grid{grid-area:step-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.output-step-toggle{border:1px solid var(--control-line);min-width:0;min-height:52px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;display:grid;position:relative}.output-step-toggle:hover{border-color:var(--control-line);background:var(--paper)}.output-step-toggle.enabled{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}.output-step-toggle.required{color:var(--ink);background:var(--surface);cursor:default;grid-column:1/-1}.output-step-toggle.unavailable{border-style:dashed}.output-step-icon{width:28px;height:28px;color:var(--muted);background:var(--surface);border-radius:4px;flex:none;place-items:center;display:grid}.output-step-toggle.enabled .output-step-icon{color:var(--accent-ink);background:var(--accent-soft)}.output-step-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.output-step-copy strong,.output-step-copy small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.output-step-copy strong{font-size:12px}.output-step-copy small{color:var(--muted);font-size:12px}.output-step-state{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.output-step-toggle input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.output-switch{width:34px;height:22px;color:var(--muted);background:var(--track);border-radius:99px;flex:none;justify-content:flex-start;align-items:center;padding:0 4px;transition:background .16s,color .16s;display:flex}.output-switch:before{content:"关";width:14px;height:14px;color:var(--ink);background:var(--thumb);box-shadow:none;border-radius:50%;place-items:center;font-size:12px;font-weight:550;transition:transform .16s;display:grid}.output-step-toggle.enabled .output-switch{color:var(--on-accent);background:var(--accent)}.output-step-toggle.enabled .output-switch:before{content:"开";color:var(--accent-ink);transform:translate(12px)}.output-step-toggle.required .output-switch{background:var(--track)}.output-step-toggle.required .output-switch:before{content:"必";color:var(--ink);transform:translate(12px)}.output-step-toggle:has(input:disabled:not(:checked)){cursor:not-allowed;opacity:.55}.video-option{border:1px solid var(--control-line);min-height:50px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:4px;grid-template-columns:auto auto 1fr auto;align-items:center;gap:9px;margin-top:9px;padding:9px 10px;display:grid}.video-option:hover{border-color:var(--control-line)}.video-option.enabled{border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.video-option.unconfigured{color:var(--muted);background:var(--paper);border-style:dashed}.video-option>input{width:15px;height:15px;accent-color:var(--accent);margin:0}.video-option-icon{width:29px;height:29px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;display:grid}.video-option>span:nth-of-type(2){flex-direction:column;gap:3px;min-width:0;display:flex}.video-option strong{font-size:12px}.video-option small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.video-option i{color:var(--ink);background:var(--surface);border-radius:4px;padding:4px 7px;font-size:12px;font-style:normal;font-weight:550}.launch-bar{border:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:space-between;align-items:center;gap:20px;margin-top:12px;padding:13px 14px 13px 17px;display:flex}.launch-state{align-items:center;gap:11px;min-width:0;display:flex}.launch-state>div{flex-direction:column;gap:3px;min-width:0;display:flex}.launch-state small{color:var(--muted);font-size:12px}.run-safety{color:var(--muted);align-items:center;gap:5px;margin-top:1px;font-size:12px;display:inline-flex}.launch-actions{flex:none;align-items:center;gap:9px;display:flex}.stop-button{border:1px solid var(--control-line);height:42px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:550;display:inline-flex}.progress-track{background:var(--surface);border-radius:4px;width:min(440px,50vw);height:4px;margin-top:5px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s;display:block}.ready-dot{background:var(--surface);width:10px;height:10px;box-shadow:none;border-radius:50%;flex:none}.ready-dot.ready{background:var(--success);box-shadow:none}input,select{border:1px solid var(--control-line);width:100%;height:41px;color:var(--ink);background:var(--paper);border-radius:4px;outline:0;padding:0 12px}textarea{resize:vertical;border:1px solid var(--control-line);width:100%;color:var(--ink);background:var(--paper);border-radius:4px;outline:0;padding:10px 11px;line-height:1.55}select{appearance:none}.select-wrap{position:relative}.select-wrap svg{color:var(--muted);pointer-events:none;position:absolute;top:12px;right:11px}.workflow-line{align-items:center;gap:10px;margin:24px 0;display:flex}.result-toolbar{border:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin:-8px 0 18px;padding:12px 14px;display:flex}.result-toolbar>div{min-width:0;color:var(--ink);align-items:center;gap:10px;display:flex}.result-toolbar>div>div{flex-direction:column;gap:2px;min-width:0;display:flex}.result-toolbar strong{font-size:12px}.result-toolbar span{color:var(--muted);font-size:12px}.result-toolbar button{border:1px solid var(--control-line);height:34px;color:var(--ink);background:var(--paper);border-radius:4px;flex:none;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:550;display:inline-flex}.quality-gate{border:1px solid var(--warning-line);background:var(--warning-soft);border-radius:4px;justify-content:space-between;align-items:center;gap:18px;margin:-8px 0 18px;padding:15px;display:flex}.quality-gate.approved{border-color:var(--success-line);background:var(--success-soft)}.quality-gate.dirty{border-color:var(--warning-line);background:var(--warning-soft)}.quality-copy{align-items:flex-start;gap:11px;min-width:0;display:flex}.quality-icon{width:36px;height:36px;color:var(--warning);background:var(--warning-soft);border-radius:4px;flex:none;place-items:center;display:grid}.quality-gate.approved .quality-icon{color:var(--success);background:var(--success-soft)}.quality-copy>div{min-width:0}.quality-copy strong{font-size:12px}.quality-copy p{color:var(--muted);margin:4px 0 9px;font-size:12px;line-height:1.5}.quality-checks{flex-wrap:wrap;gap:7px;display:flex}.quality-checks span{color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:4px;padding:4px 7px;font-size:12px;display:inline-flex}.quality-actions{flex:none;align-items:center;gap:8px;display:flex}.quality-actions button{border-radius:4px;align-items:center;gap:6px;height:36px;padding:0 11px;font-size:12px;font-weight:550;display:inline-flex}.quality-actions .secondary{border:1px solid var(--line);color:var(--ink);background:var(--paper)}.quality-actions .primary{color:var(--on-accent);background:var(--accent);border:0}.stage{border:1px solid var(--line);background:var(--paper);border-radius:4px;flex:1;align-items:center;gap:11px;min-width:0;height:76px;padding:12px;transition:all .2s;display:flex}.stage.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.stage.done{border-color:var(--line);background:var(--surface)}.stage.skipped{color:var(--muted);background:var(--surface);opacity:.72;border-style:dashed}.stage-icon{width:36px;height:36px;color:var(--muted);background:var(--surface);border-radius:4px;flex:none;place-items:center;display:grid}.stage.active .stage-icon{color:var(--on-accent);background:var(--accent)}.stage.done .stage-icon{color:var(--ink);background:var(--surface)}.stage.skipped .stage-icon{color:var(--muted);background:var(--surface)}.stage>div:last-child{flex-direction:column;gap:4px;min-width:0;display:flex}.stage strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.stage span{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.flow-arrow{color:var(--muted);flex:none}.work-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:18px;display:grid}.canvas-card{border:1px solid var(--line);background:var(--photo-bg);min-width:0;box-shadow:none;border-radius:4px;overflow:hidden}.input-card,.analysis-card{grid-column:span 3}.input-card.compact{grid-column:span 2}.analysis-card.annotation-card{grid-column:span 4}.result-card{grid-column:span 3}.work-grid>.color-plan-card,.work-grid>.room-effect-card,.work-grid>.quality-gate,.work-grid>.region-selector,.work-grid>.room-review-gate,.work-grid>.lighting-configurator{grid-column:1/-1;margin:0}.card-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:62px;padding:0 17px;display:flex}.card-header>div{gap:9px}.card-header span{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:550}.card-header h2{margin:0;font-size:14px}.card-header small{white-space:nowrap;text-overflow:ellipsis;max-width:48%;color:var(--muted);font-size:12px;overflow:hidden}.dropzone,.placeholder,.result-image{min-height:320px}.dropzone{border:1px dashed var(--control-line);color:var(--muted);background:var(--paper);cursor:pointer;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin:14px;transition:border-color .18s,background .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.dropzone:hover{border-color:var(--control-line);background:var(--surface)}.dropzone strong{color:var(--ink);font-size:14px}.dropzone input{display:none}.dropzone.has-image{background:var(--photo-bg);border:0}.dropzone.dragging{border:2px solid var(--control-line);background:var(--surface);box-shadow:none}.dropzone.dragging:after{content:"松开即可上传平面图";z-index:3;border:1px dashed var(--control-line);color:var(--on-accent);background:var(--track);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:4px;place-items:center;font-size:14px;font-weight:550;display:grid;position:absolute;inset:12px}.upload-icon{width:46px;height:46px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;display:grid}.upload-shortcuts{gap:7px;margin-top:5px;display:flex}.dropzone .upload-shortcuts span{border:1px solid var(--control-line);color:var(--muted);background:var(--paper);border-radius:4px;padding:5px 8px;font-size:12px;font-weight:550}.dropzone img,.result-image img{object-fit:contain;width:100%;height:100%;min-height:320px;display:block}.file-toolbar{border:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;margin:-5px 14px 14px;padding:10px 11px;display:flex}.file-toolbar>div{align-items:center;gap:7px;min-width:0;display:flex}.file-toolbar>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.file-toolbar strong{white-space:nowrap;text-overflow:ellipsis;max-width:280px;font-size:12px;overflow:hidden}.file-toolbar span{color:var(--muted);font-size:12px}.file-action{border:1px solid var(--control-line);height:30px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:550;display:inline-flex}.file-action input{display:none}button.file-action.danger{color:var(--error)}.annotation-editor{flex-direction:column;min-height:560px;display:flex}.annotation-intro{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.annotation-intro>div{align-items:center;gap:10px;min-width:0;display:flex}.annotation-intro p{white-space:nowrap;text-overflow:ellipsis;color:var(--ink);margin:0;font-size:12px;overflow:hidden}.annotation-intro>button{border:1px solid var(--control-line);height:32px;color:var(--ink);background:var(--paper);border-radius:4px;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:550;display:inline-flex}.annotation-state{color:var(--warning);background:var(--warning-soft);border-radius:4px;flex:none;align-items:center;gap:5px;padding:5px 8px;font-size:12px;font-weight:550;display:inline-flex}.annotation-state.confirmed{color:var(--success);background:var(--success-soft)}.annotation-workspace{grid-template-columns:minmax(0,1fr) 295px;min-height:440px;display:grid}.annotation-figure{border-right:1px solid var(--line);background:var(--photo-bg);min-width:0;padding:14px}.annotation-canvas{border:1px solid var(--line);background:var(--photo-bg);width:100%;box-shadow:none;border-radius:4px;position:relative;overflow:hidden}.annotation-canvas>img{width:100%;height:auto;display:block}.annotation-layer{position:absolute;inset:0}.room-box{border:1.5px solid var(--accent);min-width:20px;min-height:20px;color:var(--accent-ink);background:var(--selection-fill);box-shadow:none;touch-action:none;cursor:move;border-radius:4px;transition:background .14s,border-color .14s,box-shadow .14s;position:absolute}.room-box:hover{background:var(--selection-fill)}.room-box.key-space{border-color:var(--accent);background:var(--selection-fill)}.room-box.selected{z-index:4;border-width:2px;border-color:var(--accent);background:var(--selection-fill);box-shadow:none}.room-box-label{border:1px solid var(--paper);width:27px;height:27px;color:var(--accent-ink);background:var(--paper);box-shadow:none;pointer-events:none;border-radius:4px;place-items:center;padding:0;display:grid;position:absolute;top:4px;left:4px}.room-box-label b{width:17px;height:17px;color:var(--on-accent);background:var(--accent);border-radius:4px;flex:none;place-items:center;font-size:12px;display:grid}.room-resize-handle{z-index:2;touch-action:none;background:0 0;border:0;border-radius:50%;width:28px;min-width:0;height:28px;min-height:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.room-resize-handle:after{content:"";border:2px solid var(--paper);background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 1px var(--control-line);pointer-events:none;border-radius:3px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.room-resize-handle:hover:after,.room-resize-handle:focus-visible:after{width:13px;height:13px}.room-resize-handle:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.room-resize-handle:disabled{color:inherit;cursor:not-allowed;background:0 0;border:0}.room-resize-nw{cursor:nwse-resize;top:0;left:0}.room-resize-n{cursor:ns-resize;top:0;left:50%}.room-resize-ne{cursor:nesw-resize;top:0;left:100%}.room-resize-e{cursor:ew-resize;top:50%;left:100%}.room-resize-se{cursor:nwse-resize;top:100%;left:100%}.room-resize-s{cursor:ns-resize;top:100%;left:50%}.room-resize-sw{cursor:nesw-resize;top:100%;left:0}.room-resize-w{cursor:ew-resize;top:50%;left:0}.annotation-legend{min-height:30px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;padding-top:9px;font-size:12px;display:flex}.annotation-legend span{align-items:center;gap:4px;display:inline-flex}.annotation-legend i{border:1px solid var(--line);background:var(--surface);border-radius:2px;width:9px;height:9px}.annotation-legend i.key{border-color:var(--line);background:var(--track)}.annotation-legend small{color:var(--muted);margin-left:auto;font-size:12px}.annotation-selected-name{max-width:100%;color:var(--ink);overflow-wrap:anywhere;font-size:12px}.annotation-panel{background:var(--paper);min-width:0;max-height:500px;overflow:auto}.annotation-room-list{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:9px;display:grid}.annotation-room-list button{border:1px solid var(--control-line);text-align:left;min-width:0;height:auto;min-height:46px;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-columns:20px minmax(0,1fr);align-content:center;align-items:start;gap:3px 6px;padding:7px;display:grid}.annotation-room-list button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.annotation-room-list button>span{width:17px;height:17px;color:var(--on-accent);background:var(--accent);border-radius:4px;flex:none;place-items:center;font-size:12px;font-weight:550;display:grid}.annotation-room-list button strong{overflow-wrap:anywhere;min-width:0;font-size:12px;line-height:1.4}.annotation-room-list button small{color:var(--muted);grid-column:2;font-size:12px}.annotation-form{flex-direction:column;gap:10px;padding:12px;display:flex}.annotation-form-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.annotation-form-heading>div{flex-direction:column;gap:2px;display:flex}.annotation-form-heading strong{font-size:12px}.annotation-form-heading span{color:var(--muted);font-size:12px}.annotation-form-heading>button{border:1px solid var(--error-line);width:30px;height:30px;color:var(--error);background:var(--error-soft);border-radius:4px;place-items:center;display:grid}.annotation-form>label{color:var(--muted);font-size:12px;font-weight:550}.annotation-form>label input{border-radius:4px;height:34px;margin-top:5px;padding:0 9px;font-size:12px}.key-space-toggle{border:1px solid var(--control-line);background:var(--paper);cursor:pointer;border-radius:4px;align-items:center;gap:8px;min-height:48px;padding:8px;display:flex}.annotation-form .key-space-toggle input{width:15px;height:15px;accent-color:var(--accent);flex:none;margin:0;padding:0}.key-space-toggle>span{flex-direction:column;gap:3px;display:flex}.key-space-toggle strong{color:var(--ink);font-size:12px}.key-space-toggle small{color:var(--muted);font-size:12px;font-weight:500;line-height:1.35}.annotation-form fieldset{border:1px solid var(--line);border-radius:4px;margin:0;padding:9px}.annotation-form legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:550}.bounds-grid{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.bounds-grid label{color:var(--muted);font-size:12px}.bounds-grid input{text-align:center;border-radius:4px;width:100%;height:30px;margin-top:4px;padding:0 5px;font-size:12px}.annotation-form fieldset>small{color:var(--muted);margin-top:7px;font-size:12px;display:block}.annotation-footer{border-top:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(0,1fr) 295px;min-height:66px;padding:0;display:grid}.annotation-footer>div{flex-direction:column;gap:3px;min-width:0;display:flex}.annotation-footer-copy{justify-content:center;padding:12px 14px}.annotation-footer strong{font-size:12px}.annotation-footer span{color:var(--muted);font-size:12px}.annotation-footer .annotation-actions{border-left:1px solid var(--line);background:var(--surface);flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;padding:10px 12px;display:flex}.annotation-footer .annotation-actions button{flex:1 1 0;min-width:0;padding-inline:9px}.annotation-confirm-step{border:1px solid var(--line);min-height:39px;color:var(--ink);background:var(--paper);border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:550;display:inline-flex}.confirm-annotations{min-height:39px;color:var(--on-accent);background:var(--accent);box-shadow:none;border:0;border-radius:4px;flex:none;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:550;display:inline-flex}.region-selector{border:1px solid var(--control-line);background:var(--paper);box-shadow:none;border-radius:4px;margin:-8px 0 18px;overflow:hidden}.region-selector.pending{border-color:var(--warning-line)}.region-selector.confirmed{border-color:var(--success-line)}.region-selector>header{border-bottom:1px solid var(--control-line);background:var(--paper);align-items:center;gap:11px;min-height:68px;padding:13px 15px;display:flex}.region-selector.pending>header{background:var(--warning-soft)}.region-selector.confirmed>header{background:var(--success-soft)}.region-heading-icon{width:37px;height:37px;color:var(--ink);background:var(--surface);border-radius:4px;flex:none;place-items:center;display:grid}.region-selector.pending .region-heading-icon{color:var(--warning);background:var(--warning-soft)}.region-selector>header>div:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.region-selector>header span:not(.region-status){white-space:nowrap;text-overflow:ellipsis;color:var(--warning);font-size:12px;overflow:hidden}.region-status{color:var(--warning);background:var(--warning-soft);border-radius:4px;flex:none;margin-left:auto;padding:5px 8px;font-size:12px;font-weight:550}.region-selector.confirmed .region-status{color:var(--success);background:var(--success-soft)}.region-selector-body{grid-template-columns:minmax(0,1fr) 380px;min-height:390px;display:grid}.region-figure{border-right:1px solid var(--line);background:var(--photo-bg);flex-direction:column;align-items:stretch;min-width:0;padding:15px;display:flex}.region-canvas{border:1px solid var(--line);background:var(--photo-bg);width:100%;box-shadow:none;border-radius:4px;position:relative;overflow:hidden}.region-canvas>img{width:100%;height:auto;display:block}.region-figure>small{width:100%;color:var(--muted);margin-top:9px;font-size:12px;line-height:1.55;display:block}.region-box{border:2px solid var(--accent);min-width:22px;min-height:22px;color:var(--accent-ink);background:var(--selection-fill);box-shadow:none;touch-action:none;cursor:move;border-radius:4px;position:absolute}.region-box:hover{background:var(--selection-fill)}.region-box:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.region-box.selected{z-index:3;border-color:var(--accent);background:var(--selection-fill);box-shadow:none}.region-box>span{border:1px solid var(--paper);white-space:nowrap;text-overflow:ellipsis;max-width:calc(100% - 10px);color:var(--accent-ink);background:var(--paper);box-shadow:none;pointer-events:none;border-radius:4px;align-items:center;gap:5px;padding:4px 6px;font-size:12px;font-weight:550;display:inline-flex;position:absolute;top:5px;left:5px;overflow:hidden}.region-box>span b{width:17px;height:17px;color:var(--on-accent);background:var(--accent);border-radius:4px;flex:none;place-items:center;font-size:12px;display:grid}.region-box>span small{color:var(--accent-ink);margin-left:1px;font-size:12px;font-weight:550}.region-resize{cursor:nwse-resize;touch-action:none;background:0 0;border:0;width:28px;height:28px;padding:0;position:absolute;bottom:-11px;right:-11px}.region-resize:after{content:"";border:2px solid var(--paper);background:var(--accent);width:12px;height:12px;box-shadow:none;border-radius:4px;position:absolute;bottom:6px;right:6px}.camera-guide-svg{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.camera-guide-svg polygon{fill:var(--selection-fill);stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.camera-guide-svg line{stroke:var(--accent);stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.camera-marker,.camera-target{z-index:6;touch-action:none;cursor:grab;box-shadow:none;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.camera-marker:active,.camera-target:active{cursor:grabbing}.camera-marker{border:3px solid var(--paper);width:44px;height:44px;color:var(--on-accent);background:var(--accent);border-radius:50%}.camera-target{width:44px;height:44px;color:var(--accent-ink);box-shadow:none;background:0 0;border:0;border-radius:50%}.camera-target:before{content:"";border:2px solid var(--accent);background:var(--paper);box-shadow:none;border-radius:50%;position:absolute;inset:6px}.camera-target svg{z-index:1;position:relative}.camera-marker:focus-visible,.camera-target:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.camera-marker:disabled,.camera-target:disabled{opacity:.62;cursor:not-allowed}.room-camera-marker{z-index:5;border:2px solid var(--paper);width:32px;height:32px;color:var(--accent-ink);background:var(--accent);box-shadow:none;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.room-camera-marker:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.region-panel{background:var(--paper);min-width:0}.region-source-note{border-bottom:1px solid var(--line);min-height:59px;color:var(--ink);background:var(--surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.region-source-note>svg{flex:none}.region-source-note>div{flex-direction:column;gap:3px;min-width:0;display:flex}.region-source-note strong{font-size:12px}.region-source-note span{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.region-source-note>b{color:var(--ink);background:var(--surface);white-space:nowrap;border-radius:4px;padding:4px 7px;font-size:12px}.region-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px;display:grid}.region-tabs button{border:1px solid var(--control-line);white-space:nowrap;text-overflow:ellipsis;text-align:left;min-width:0;min-height:38px;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:550;display:grid;overflow:hidden}.region-tabs button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.region-tabs button .region-tab-icon{width:23px;height:23px;color:var(--on-accent);background:var(--track);border-radius:4px;flex:none;place-items:center;display:grid}.region-tabs button strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.region-tabs button small{color:var(--muted);align-items:center;gap:3px;font-size:12px;display:inline-flex}.region-tabs-heading{justify-content:space-between;align-items:flex-end;gap:10px;padding:10px 10px 0;display:flex}.region-tabs-heading>div:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.region-tabs-heading strong{font-size:12px}.region-tabs-heading span{color:var(--muted);font-size:12px;line-height:1.4}.region-tabs-actions{flex:none;gap:5px;display:inline-flex}.region-tabs-actions button{border:1px solid var(--control-line);height:27px;color:var(--ink);background:var(--paper);border-radius:4px;padding:0 7px;font-size:12px}.region-tabs-actions button:disabled{opacity:.45;cursor:not-allowed}.region-generation-target{border:1px solid var(--line);color:var(--accent-ink);background:var(--accent-soft);overflow-wrap:anywhere;border-radius:4px;margin:0 10px 10px;padding:8px 10px;font-size:12px;font-weight:600;line-height:1.5}.region-tab-item{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:5px;min-width:0;display:grid}.region-tab-item>button{width:100%}.region-tab-item.checked>button{border-color:var(--accent-line)}.region-tab-check{border:1px solid var(--control-line);min-width:38px;color:var(--muted);background:var(--paper);cursor:pointer;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0 5px;font-size:10px;display:flex}.region-tab-check:has(input:checked){color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.region-tab-check input{width:15px;height:15px;accent-color:var(--accent);margin:0}.region-controls{padding:14px}.region-controls-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.region-controls-heading>div{flex-direction:column;gap:3px;min-width:0;display:flex}.region-controls-heading strong{font-size:12px}.region-controls-heading span{color:var(--muted);font-size:12px}.region-controls-heading>button,.render-settings-title>button{border:1px solid var(--control-line);min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:550;display:inline-flex}.region-controls fieldset{border:1px solid var(--line);border-radius:4px;margin:14px 0 0;padding:10px}.region-controls legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:550}.region-controls fieldset>small{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.45;display:block}.region-controls p{color:var(--muted);background:var(--surface);border-radius:4px;align-items:flex-start;gap:6px;margin:11px 0 0;padding:9px;font-size:12px;line-height:1.5;display:flex}.region-controls p svg{flex:none;margin-top:1px}.render-settings{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:12px;padding-top:12px;display:flex}.render-settings-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.render-settings-title>div{flex-direction:column;gap:3px;min-width:0;display:flex}.render-settings-title strong{font-size:12px}.render-settings-title span{color:var(--muted);font-size:12px}.render-field{color:var(--ink);flex-direction:column;gap:6px;font-size:12px;font-weight:550;display:flex}.render-field select,.render-field textarea{border:1px solid var(--control-line);width:100%;color:var(--ink);background:var(--paper);font:inherit;border-radius:4px;outline:none;font-weight:600}.render-field select{min-height:38px;padding:0 10px}.render-field textarea{resize:vertical;min-height:78px;padding:9px 10px;line-height:1.55}.render-field select:focus,.render-field textarea:focus{border-color:var(--control-line);box-shadow:none}.render-field small{color:var(--muted);font-size:12px;font-weight:500;line-height:1.5}.room-structure-reference,.room-colors-field{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:10px}.room-structure-preview{align-items:center;gap:9px;min-width:0;display:flex}.room-structure-preview img{object-fit:contain;border:1px solid var(--line);background:var(--paper);border-radius:4px;flex:none;width:96px;height:68px}.room-structure-preview span{overflow-wrap:anywhere;flex:1;min-width:0;font-size:12px;font-weight:500}.room-structure-preview button,.room-colors-field>button{border:1px solid var(--control-line);min-height:40px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:4px;padding:0 10px;font-size:12px}.room-structure-file{flex-direction:column;gap:5px;font-size:12px;display:flex}.room-structure-file input{min-width:0;max-width:100%;font-size:12px;font-weight:400}.render-field .room-reference-error{color:var(--error)}.region-reference-panel{border:1px solid var(--line);background:var(--paper);border-radius:6px;width:100%;margin-top:16px;padding:14px}.region-reference-heading{margin-bottom:11px}.region-reference-heading>div{gap:3px;display:grid}.region-reference-heading strong{color:var(--ink);font-size:14px}.region-reference-heading span{color:var(--muted);font-size:12px;line-height:1.5}.region-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.region-reference-grid .room-structure-reference{background:var(--surface);min-width:0}.region-reference-panel>.room-reference-error{color:var(--error);margin-top:9px;font-size:12px;display:block}.camera-parameters-details{border:1px solid var(--line);background:var(--surface);border-radius:4px}.camera-parameters-details>summary{cursor:pointer;color:var(--ink);padding:10px 12px;font-size:12px;font-weight:600}.camera-parameters-details>summary span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:400;display:block}.camera-parameters-details>.camera-parameters{background:var(--paper);margin:0 10px 10px}.camera-live-summary,.room-version-camera{border:1px solid var(--line);background:var(--surface);border-radius:6px;gap:4px;padding:10px 12px;font-size:12px;line-height:1.5;display:grid}.camera-live-summary strong,.room-version-camera strong,.camera-live-summary span,.room-version-camera span{color:var(--ink)}.camera-live-summary small,.room-version-camera small{color:var(--muted);font-size:12px}.room-version-camera{margin:10px 0 0}.room-version-camera.outdated{border-color:var(--warning);background:var(--warning-soft)}.room-version-camera.outdated strong{color:var(--warning)}.camera-parameters{gap:10px;display:grid}.camera-parameter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.camera-parameter-grid label{min-width:0;color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:550;display:flex}.camera-parameter-grid input{border:1px solid var(--control-line);width:100%;min-width:0;height:32px;color:var(--ink);background:var(--paper);text-align:center;border-radius:4px;padding:0 6px;font-size:12px}.camera-fov{color:var(--ink);flex-direction:column;gap:6px;font-size:12px;font-weight:550;display:flex}.camera-fov>span{justify-content:space-between;align-items:center;display:flex}.camera-fov output{color:var(--ink);font-variant-numeric:tabular-nums}.camera-fov input{width:100%;accent-color:var(--accent)}.camera-height{color:var(--ink);grid-template-columns:1fr 110px;align-items:center;gap:8px;font-size:12px;font-weight:550;display:grid}.camera-height select{border:1px solid var(--control-line);width:100%;min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;padding:0 7px;font-size:12px}.render-focus-chips{flex-wrap:wrap;gap:7px;display:flex}.render-focus-chips button{border:1px solid var(--control-line);min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:4px;padding:0 9px;font-size:12px;font-weight:550;display:inline-flex}.render-focus-chips button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.system-prompt-lock{color:var(--ink);background:var(--surface);border-radius:4px;align-items:flex-start;gap:8px;padding:10px;display:flex}.system-prompt-lock>svg{flex:none;margin-top:1px}.system-prompt-lock>div{flex-direction:column;gap:3px;display:flex}.system-prompt-lock strong{font-size:12px}.system-prompt-lock span{color:var(--muted);font-size:12px;line-height:1.5}.region-selector>footer{border-top:1px solid var(--control-line);background:var(--paper);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:12px 15px;display:flex}.region-selector>footer>div{flex-direction:column;gap:4px;min-width:0;display:flex}.region-selector>footer strong{font-size:12px}.region-selector>footer span{color:var(--muted);font-size:12px}.region-selector>footer button,.room-review-actions>button{border-radius:4px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:39px;padding:0 13px;font-size:12px;font-weight:550;display:inline-flex}.region-selector>footer .primary,.room-review-actions>.primary{color:var(--on-accent);background:var(--accent);box-shadow:none;border:0}.region-selector>footer .secondary{border:1px solid var(--control-line);color:var(--ink);background:var(--paper)}.region-selector>footer .region-actions{flex-direction:row;flex:none;align-items:center;gap:8px}.region-selector>footer button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.room-review-gate{border:1px solid var(--warning-line);background:var(--warning-soft);border-radius:4px;justify-content:space-between;align-items:center;gap:18px;margin:-8px 0 18px;padding:15px;display:flex}.room-review-copy{align-items:flex-start;gap:11px;min-width:0;display:flex}.room-review-copy>span{width:36px;height:36px;color:var(--warning);background:var(--warning-soft);border-radius:4px;flex:none;place-items:center;display:grid}.room-review-copy>div{min-width:0}.room-review-copy strong{font-size:12px}.room-review-copy p{color:var(--muted);margin:4px 0 9px;font-size:12px;line-height:1.5}.room-review-items{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.room-review-items>div{border:1px solid var(--line);background:var(--paper);border-radius:4px;display:inline-flex;overflow:hidden}.room-review-items button{min-height:30px;color:var(--ink);background:var(--paper);border:0;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:550;display:inline-flex}.room-review-items button+button{border-left:1px solid var(--control-line);color:var(--ink);background:var(--surface)}.room-review-actions{flex:none;align-items:center;gap:8px;display:flex}.room-review-actions>.secondary{border:1px solid var(--line);color:var(--ink);background:var(--paper)}.lighting-configurator{border:1px solid var(--line);background:var(--paper);box-shadow:none;border-radius:4px;overflow:hidden}.lighting-configurator.pending{border-color:var(--line)}.lighting-configurator>header{border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:auto 1fr auto;align-items:center;gap:11px;min-height:66px;padding:12px 15px;display:grid}.lighting-heading-icon{width:37px;height:37px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;display:grid}.lighting-configurator>header>div:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.lighting-configurator>header span{color:var(--muted);font-size:12px;line-height:1.45}.lighting-config-status{background:var(--warning-soft);border-radius:4px;padding:5px 8px;font-weight:550;color:var(--warning)!important}.lighting-configurator.confirmed .lighting-config-status{background:var(--success-soft);color:var(--success)!important}.lighting-config-body{grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);display:grid}.lighting-source{border-right:1px solid var(--line);background:var(--surface);padding:15px}.lighting-source-image{border:1px solid var(--line);background:var(--photo-bg);border-radius:4px;overflow:hidden}.lighting-source-image>button{background:var(--photo-bg);cursor:zoom-in;border:0;width:100%;padding:0;display:block;position:relative}.lighting-source-image img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.lighting-source-image button>span{min-height:30px;color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:550;display:inline-flex;position:absolute;bottom:9px;right:9px}.lighting-lock-note{color:var(--ink);background:var(--surface);border-radius:4px;align-items:flex-start;gap:8px;margin-top:11px;padding:11px;display:flex}.lighting-lock-note>svg{flex:none;margin-top:1px}.lighting-lock-note>div{flex-direction:column;gap:3px;display:flex}.lighting-lock-note strong{font-size:12px}.lighting-lock-note span{color:var(--muted);font-size:12px;line-height:1.55}.lighting-controls{flex-direction:column;gap:14px;min-width:0;padding:15px;display:flex}.lighting-selector-group{flex-direction:column;gap:6px;display:flex}.lighting-tabs{flex-wrap:wrap;gap:6px;display:flex}.lighting-tabs button{border:1px solid var(--control-line);min-height:34px;color:var(--ink);background:var(--paper);border-radius:4px;padding:0 11px;font-size:12px;font-weight:550}.lighting-tabs button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.lighting-tabs.scenes button{min-width:76px}.lighting-section-heading{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.lighting-section-heading>div{flex-direction:column;gap:3px;display:flex}.lighting-section-heading span{color:var(--muted);font-size:12px}.lighting-section-heading>button{border:1px solid var(--control-line);min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:550;display:inline-flex}.lighting-group-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lighting-group-list fieldset,.lighting-secondary-settings fieldset{border:1px solid var(--line);background:var(--paper);border-radius:4px;min-width:0;margin:0;padding:10px}.lighting-group-list fieldset.enabled{border-color:var(--accent);background:var(--accent-soft)}.lighting-group-list fieldset.disabled{opacity:.7}.lighting-group-list legend,.lighting-secondary-settings legend{width:calc(100% - 8px);color:var(--ink);align-items:center;gap:6px;padding:0 4px;display:flex}.lighting-group-list legend>span{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.lighting-group-list legend strong{font-size:12px}.lighting-group-list legend small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;font-weight:500;overflow:hidden}.mini-switch{cursor:pointer;flex:none}.mini-switch input{opacity:0;width:1px;height:1px;position:absolute}.mini-switch>span{background:var(--track);border-radius:99px;width:35px;height:22px;transition:background .16s;display:block;position:relative}.mini-switch i{background:var(--thumb);width:16px;height:16px;box-shadow:none;border-radius:50%;transition:transform .16s;position:absolute;top:3px;left:3px}.mini-switch input:checked+span{background:var(--accent)}.lighting-group-parameters{gap:8px;margin-top:8px;display:grid}.lighting-group-parameters label{min-width:0;color:var(--ink);flex-direction:column;gap:5px;font-size:12px;font-weight:550;display:flex}.lighting-group-parameters label>span{justify-content:space-between;align-items:center;gap:5px;display:flex}.lighting-group-parameters output{color:var(--ink);font-variant-numeric:tabular-nums}.lighting-group-parameters input{width:100%;accent-color:var(--accent)}.lighting-group-parameters select{border:1px solid var(--control-line);width:100%;min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;padding:0 7px;font-size:12px}.lighting-secondary-settings{grid-template-columns:1fr 1fr;gap:8px;display:grid}.lighting-secondary-settings legend{font-size:12px;font-weight:550}.setting-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:7px 0;display:grid}.setting-choice-grid.tv{grid-template-columns:repeat(3,minmax(0,1fr))}.setting-choice-grid button{border:1px solid var(--control-line);min-height:32px;color:var(--ink);background:var(--paper);border-radius:4px;padding:0 6px;font-size:12px;font-weight:550}.setting-choice-grid button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.lighting-text-field{flex-direction:column;gap:6px;display:flex}.lighting-text-field input,.lighting-text-field textarea{border:1px solid var(--control-line);width:100%;color:var(--ink);background:var(--paper);font:inherit;resize:vertical;border-radius:4px;padding:8px 9px;font-size:12px;line-height:1.5}.lighting-text-field input:focus,.lighting-text-field textarea:focus,.lighting-group-parameters select:focus{border-color:var(--control-line);box-shadow:none;outline:none}.lighting-configurator>footer{border-top:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:12px 15px;display:flex}.lighting-configurator>footer>div:first-child{flex-direction:column;gap:4px;min-width:0;display:flex}.lighting-configurator>footer strong{font-size:12px}.lighting-configurator>footer span{color:var(--muted);font-size:12px}.lighting-actions{flex:none;gap:8px;display:flex}.lighting-actions button{border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 13px;font-size:12px;font-weight:550;display:inline-flex}.lighting-actions .secondary{border:1px solid var(--line);color:var(--ink);background:var(--paper)}.lighting-actions .primary{color:var(--on-accent);background:var(--accent);box-shadow:none;border:0}.lighting-actions button:disabled,.lighting-configurator button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.lighting-configurator button:focus-visible,.lighting-configurator input:focus-visible,.lighting-configurator select:focus-visible,.lighting-configurator textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.placeholder{text-align:center;color:var(--muted);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:30px;display:flex}.placeholder p{max-width:250px;margin:0;font-size:12px;line-height:1.6}.result-image{text-align:left;background:var(--photo-bg);cursor:zoom-in;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.result-asset{position:relative}.work-grid>.color-plan-card{width:100%}.color-plan-card .result-image{border:1px solid var(--line);background:var(--photo-bg);border-radius:4px;min-height:0}.color-plan-card .result-image img{object-fit:contain;width:100%;max-width:100%;height:auto;min-height:0;max-height:none;margin:0}.preview-hint{z-index:2;border:1px solid var(--overlay-line);min-width:max-content;color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;opacity:0;border-radius:4px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:550;transition:opacity .18s,transform .18s;display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%,5px)}.result-image:hover .preview-hint,.result-image:focus-visible .preview-hint{opacity:1;transform:translate(-50%)}.asset-download{border:1px solid var(--overlay-line);height:34px;color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:4px;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:550;display:inline-flex;position:absolute;bottom:12px;right:12px}.result-gallery{background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:9px;min-height:320px;padding:10px;display:grid}.result-gallery img{aspect-ratio:4/3;object-fit:cover;background:var(--surface);width:100%;display:block}.result-gallery span{white-space:nowrap;text-overflow:ellipsis;color:var(--ink);padding:8px 9px;font-size:12px;font-weight:550;display:block;overflow:hidden}.gallery-asset{border:1px solid var(--line);background:var(--paper);border-radius:4px;min-width:0;overflow:hidden}.gallery-preview{text-align:left;background:var(--photo-bg);cursor:zoom-in;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.gallery-preview i{border:1px solid var(--overlay-line);color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;opacity:0;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:12px;font-style:normal;font-weight:550;transition:opacity .18s,transform .18s;display:inline-flex;position:absolute;top:8px;right:8px;transform:translateY(-3px)}.gallery-preview:hover i,.gallery-preview:focus-visible i{opacity:1;transform:translateY(0)}.gallery-asset>button{border:0;border-top:1px solid var(--control-line);width:100%;height:30px;color:var(--ink);background:var(--paper);justify-content:center;align-items:center;gap:5px;font-size:12px;font-weight:550;display:flex}.gallery-asset>.gallery-preview{height:auto;color:inherit;background:var(--photo-bg);border-top:0;display:block}.room-version-gallery{background:var(--surface);gap:14px;padding:14px;display:grid}.room-version-group{border:1px solid var(--line);background:var(--paper);width:min(100%,980px);box-shadow:none;border-radius:4px;margin:0 auto;overflow:hidden}.room-version-group>header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.room-version-group>header>div{color:var(--ink);align-items:center;gap:7px;display:flex}.room-version-group>header>span{color:var(--ink);background:var(--surface);border-radius:4px;padding:4px 7px;font-size:12px;font-weight:550}.room-version-main-image{border:1px solid var(--line);background:var(--photo-bg);cursor:zoom-in;border-radius:4px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.room-version-main-image>img{aspect-ratio:auto;object-fit:contain;background:var(--overlay);width:100%;height:auto;max-height:none;display:block}.room-version-main-image>i{border:1px solid var(--overlay-line);color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;opacity:0;border-radius:4px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;font-style:normal;font-weight:550;transition:opacity .18s;display:inline-flex;position:absolute;bottom:10px;right:10px}.room-version-main-image:hover>i,.room-version-main-image:focus-visible>i{opacity:1}.room-version-badges{flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px}.room-version-badges b{border:1px solid var(--line);color:var(--on-accent);background:var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:12px;display:inline-flex}.room-version-badges b.latest{color:var(--ink);background:var(--surface)}.room-version-badges b.history{color:var(--on-accent);background:var(--accent)}.room-version-main-meta{justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding-top:10px;display:flex}.room-version-main-meta>div:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.room-version-main-meta span{color:var(--muted);font-size:12px}.room-version-main-actions{flex:none;align-items:center;gap:8px;display:flex}.room-version-main-actions>button{border:1px solid var(--control-line);min-height:38px;color:var(--ink);background:var(--paper);border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 11px;font-size:12px;font-weight:550;display:inline-flex}.room-version-main-actions>button.use-version{border-color:var(--control-line);color:var(--on-accent);background:var(--accent);box-shadow:none}.room-version-main-actions>button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.current-version-note{background:var(--success-soft);border-radius:4px;align-items:center;gap:5px;min-height:38px;padding:0 9px;font-weight:550;display:inline-flex;color:var(--success)!important}.historical-version-note{background:var(--warning-soft);border-radius:4px;align-items:center;gap:5px;min-height:38px;padding:0 9px;font-weight:550;display:inline-flex;color:var(--warning)!important}.room-version-history{border-top:1px solid var(--line);background:var(--paper);padding:11px 12px 13px}.room-version-history-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.room-version-history-title>div{color:var(--ink);align-items:center;gap:6px;display:flex}.room-version-history-title>span{color:var(--muted);font-size:12px}.room-version-thumbnails{overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;grid-auto-columns:minmax(145px,190px);grid-auto-flow:column;gap:8px;margin:0;padding:0 0 3px;list-style:none;display:grid;overflow-x:auto}.room-version-thumbnails>li{scroll-snap-align:start;min-width:0}.room-version-thumbnails>li>button{border:1px solid var(--control-line);text-align:left;background:var(--paper);border-radius:4px;width:100%;min-width:0;padding:0;overflow:hidden}.room-version-thumb-image{display:block;position:relative}.room-version-thumb-image img{aspect-ratio:16/10;object-fit:cover;background:var(--photo-bg);width:100%;display:block}.room-version-thumb-image b{color:var(--on-accent);background:var(--photo-bg);border-radius:4px;padding:3px 5px;font-size:12px;position:absolute;top:6px;left:6px}.room-version-thumb-image b.latest{color:var(--ink);background:var(--photo-bg)}.room-version-thumb-image b.history{background:var(--photo-bg)}.room-version-thumbnails>li>button>span:last-child{justify-content:space-between;align-items:center;gap:6px;padding:7px 8px;display:flex}.room-version-thumbnails strong{font-size:12px}.room-version-thumbnails small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.model-route-mark{color:currentColor;letter-spacing:0;opacity:.24;vertical-align:baseline;margin-left:3px;font-size:9px;font-weight:500}.model-route-mark.is-admin{opacity:.42}.model-route-mark:hover{opacity:.72}.room-version-main-image:focus-visible,.room-version-main-actions button:focus-visible,.room-version-thumbnails button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.video-gallery{background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;min-height:320px;padding:10px;display:grid}.video-asset{border:1px solid var(--line);background:var(--paper);border-radius:4px;min-width:0;overflow:hidden}.video-asset video{aspect-ratio:16/9;object-fit:cover;background:var(--photo-bg);width:100%;display:block}.video-task-state{text-align:center;min-height:180px;color:var(--ink);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:24px;display:flex}.video-task-state.failed,.video-task-state.cancelled{color:var(--error);background:var(--error-soft)}.video-task-state strong{font-size:12px}.video-task-state span{max-width:240px;color:var(--muted);font-size:12px;line-height:1.5}.video-asset-meta{justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:8px 9px;display:flex}.video-asset-meta>span{flex-direction:column;gap:3px;min-width:0;display:flex}.video-asset-meta strong,.video-asset-meta small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.video-asset-meta strong{font-size:12px}.video-asset-meta small{color:var(--muted);font-size:12px}.video-asset-meta button{border:1px solid var(--control-line);height:29px;color:var(--ink);background:var(--paper);border-radius:4px;flex:none;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:550;display:inline-flex}.card-action{border-top:1px solid var(--line);padding:13px}.card-action button{width:100%;height:40px;color:var(--on-accent);background:var(--accent);border:0;border-radius:4px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:550;display:flex}.preview-open{overflow:hidden}.image-lightbox{z-index:80;background:var(--lightbox-scrim);-webkit-backdrop-filter:none;backdrop-filter:none;cursor:zoom-out;place-items:center;padding:28px;animation:.16s ease-out lightbox-in;display:grid;position:fixed;inset:0}.lightbox-stage{cursor:default;flex-direction:column;justify-content:center;align-items:center;width:calc(100vw - 56px);height:calc(100vh - 56px);display:flex;position:relative}.lightbox-stage>img{object-fit:contain;background:var(--surface);max-width:100%;max-height:calc(100% - 52px);box-shadow:none;border-radius:4px;display:block}.lightbox-toolbar{width:100%;min-height:44px;color:var(--overlay-ink);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 4px 8px;display:grid}.lightbox-toolbar strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.lightbox-toolbar button{border:1px solid var(--overlay-line);width:36px;height:36px;color:var(--overlay-ink);background:var(--overlay);cursor:pointer;border-radius:50%;justify-self:end;place-items:center;display:grid}.lightbox-toolbar button:hover{background:var(--overlay)}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.modal-backdrop{z-index:50;background:var(--scrim);-webkit-backdrop-filter:none;backdrop-filter:none;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--paper);width:min(620px,100%);box-shadow:none;border-radius:4px;padding:24px}.advanced-settings{width:min(820px,100%);max-height:min(840px,100vh - 40px);overflow:auto}.modal header{justify-content:space-between;gap:20px;margin-bottom:20px}.modal h2{margin:0 0 5px;font-size:19px}.modal p{color:var(--muted);margin:0;font-size:12px}.modal header button{width:34px;height:34px;color:var(--muted);background:var(--surface);border:0;border-radius:4px;place-items:center;display:grid}.settings-status{color:var(--ink);background:var(--surface);border-radius:4px;gap:12px;margin-bottom:18px;padding:14px}.settings-status>div{flex-direction:column;gap:3px;min-width:0;display:flex}.settings-status strong{font-size:12px}.settings-status span{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.settings-status.video-pending{color:var(--warning);background:var(--warning-soft)}.settings-tabs{background:var(--surface);border-radius:4px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:-5px 0 18px;padding:4px;display:grid}.settings-tabs button{height:38px;color:var(--muted);background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:550;display:flex}.settings-tabs button.active{color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.settings-panel{min-height:430px}.settings-section{margin-top:17px}.settings-section-title{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:10px;display:flex}.settings-section-title strong{font-size:12px}.settings-section-title span{color:var(--muted);font-size:12px}.provider-cards{grid-template-columns:1fr 1fr;gap:9px;display:grid}.provider-cards button{border:1px solid var(--control-line);text-align:left;min-width:0;color:var(--ink);background:var(--paper);border-radius:4px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.provider-cards button.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.provider-cards span{color:var(--muted);font-size:12px}.official-model-preset{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:13px}.official-model-preset>div{align-items:center;gap:9px;margin-bottom:10px;display:flex}.official-model-preset>div>span{width:28px;height:28px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;display:grid}.official-model-preset>div>div{flex-direction:column;gap:2px;display:flex}.official-model-preset strong{color:var(--ink);font-size:12px}.official-model-preset small{color:var(--muted);font-size:12px}.official-model-preset>label{color:var(--ink);font-size:12px;font-weight:550;display:block}.official-model-preset>label input{margin-top:6px}.official-model-preset>label small{margin-top:4px;font-weight:500;display:block}.model-connection-block{border:1px solid var(--line);background:var(--paper);border-radius:4px;margin-top:10px;padding:13px}.model-connection-block+.model-connection-block{margin-top:12px}.model-connection-title{align-items:center;gap:9px;margin-bottom:10px;display:flex}.model-connection-title>span{width:24px;height:24px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;font-size:12px;font-weight:550;display:grid}.model-connection-title>div{flex-direction:column;gap:2px;min-width:0;display:flex}.model-connection-title strong{color:var(--ink);font-size:12px}.model-connection-title small{color:var(--muted);font-size:12px}.model-connection-block>label,.model-connection-block .two-fields label{color:var(--muted);font-size:12px;font-weight:550;display:block}.model-connection-block>label input,.model-connection-block .two-fields input{margin-top:6px}.model-connection-block label small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:500;display:block}.protocol-cards{margin:2px 0 10px}.setting-inline-toggle{border:1px solid var(--control-line);cursor:pointer;background:var(--paper);border-radius:4px;align-items:center;gap:9px;min-height:48px;margin-top:11px;padding:8px 10px;display:flex!important}.setting-inline-toggle input{width:17px;height:17px;accent-color:var(--accent);margin:0!important}.setting-inline-toggle>span{flex-direction:column;gap:1px;display:flex}.setting-inline-toggle strong{color:var(--ink);font-size:12px}.setting-inline-toggle small{margin:0!important}.settings-section>label,.prompt-fields label{color:var(--muted);margin-top:10px;font-size:12px;font-weight:550;display:block}.settings-section input[type=range]{box-shadow:none;accent-color:var(--accent);border:0;padding:0}.settings-section>label small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:500;display:block}.settings-section>label input,.prompt-fields textarea{margin-top:6px}.two-fields small{color:var(--muted);margin-top:5px;font-size:12px;font-weight:500;display:block}.connection-check{border:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:13px;display:flex}.connection-check>div:first-child{flex-direction:column;gap:4px;min-width:0;display:flex}.connection-check span{color:var(--muted);font-size:12px}.connection-check>div:last-child{flex:none;gap:7px;display:flex}.connection-check button{border-radius:4px;align-items:center;gap:6px;height:35px;padding:0 10px;font-size:12px;font-weight:550;display:inline-flex}.connection-check .secondary{border:1px solid var(--line);color:var(--ink);background:var(--paper)}.test-button{color:var(--on-accent);background:var(--accent);border:0}.check-ok,.check-error{align-items:flex-start;gap:5px;margin-top:4px;font-size:12px;line-height:1.45;display:flex}.check-ok{color:var(--success)}.check-error{color:var(--error)}.prompt-lock{color:var(--ink);background:var(--surface);border-radius:4px;align-items:flex-start;gap:10px;padding:13px;display:flex}.prompt-lock>div{flex-direction:column;gap:4px;display:flex}.prompt-lock strong{font-size:12px}.prompt-lock span{color:var(--muted);font-size:12px;line-height:1.5}.prompt-variables{flex-wrap:wrap;align-items:center;gap:6px;margin:13px 0;display:flex}.prompt-variables strong{margin-right:3px;font-size:12px}.prompt-variables span{color:var(--ink);background:var(--surface);border-radius:4px;padding:4px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.prompt-fields{grid-template-columns:1fr 1fr;gap:10px 12px;display:grid}.prompt-fields label{margin:0}.prompt-fields label.full{grid-column:1/-1}.prompt-fields textarea{min-height:78px;font-size:12px}.reset-prompts{border:1px solid var(--line);height:34px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:6px;margin-top:12px;padding:0 10px;font-size:12px;font-weight:550;display:inline-flex}.batch-summary{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:9px;display:grid}.batch-summary.has-video{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.batch-summary>div{border:1px solid var(--line);background:var(--paper);border-radius:4px;flex-direction:column;gap:5px;min-width:0;padding:13px;display:flex}.batch-summary small{color:var(--muted);font-size:12px}.batch-summary strong{font-size:16px}.batch-summary span{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.confirm-note{color:var(--warning);background:var(--warning-soft);border-radius:4px;margin-top:13px;padding:11px 13px;font-size:12px;line-height:1.6}.batch-summary .paid-summary{border-color:var(--warning-line);background:var(--warning-soft)}.video-confirm-modal{width:min(560px,100%)}.video-cost-card{border:1px solid var(--warning-line);color:var(--warning);background:var(--warning-soft);border-radius:4px;align-items:flex-start;gap:12px;padding:15px;display:flex}.video-cost-card>div{flex-direction:column;gap:4px;min-width:0;display:flex}.video-cost-card small{color:var(--warning);font-size:12px}.video-cost-card strong{font-size:14px}.video-cost-card span{color:var(--warning);font-size:12px;line-height:1.55}.history-modal{width:min(650px,100%);max-height:calc(100dvh - 40px);overflow-y:auto}.history-list{gap:8px;max-height:min(460px,52dvh);display:grid;overflow:auto}.history-item{border:1px solid var(--line);text-align:left;width:100%;min-width:0;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-columns:64px 1fr auto;align-items:center;gap:12px;padding:10px;display:grid}.history-item:hover{border-color:var(--line);background:var(--surface)}.history-thumb{width:64px;height:52px;color:var(--muted);background:var(--surface);border-radius:4px;place-items:center;display:grid;overflow:hidden}.history-thumb img{object-fit:cover;width:100%;height:100%}.history-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.history-copy strong,.history-copy span,.history-copy small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.history-copy span,.history-copy small{color:var(--muted);font-size:12px}.history-empty{text-align:center;min-height:180px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.history-empty strong{color:var(--ink);font-size:12px}.history-empty span{max-width:300px;font-size:12px;line-height:1.6}.install-modal{width:min(600px,100%)}.install-steps{gap:9px;display:grid}.install-steps>div{border:1px solid var(--line);background:var(--paper);border-radius:4px;grid-template-columns:30px 1fr;gap:10px;padding:12px;display:grid}.install-steps>div>span{width:30px;height:30px;color:var(--on-accent);background:var(--accent);border-radius:4px;place-items:center;font-size:12px;font-weight:550;display:grid}.install-steps>div>div{min-width:0}.install-steps strong{font-size:12px}.install-steps p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.55}.modal>label{margin-top:14px}.modal>label input{margin-top:7px}.two-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.two-fields label{color:var(--muted);font-size:12px;font-weight:550}.two-fields input{margin-top:7px}.modal footer{justify-content:flex-end;gap:9px;margin-top:24px}.modal footer .save-hint{color:var(--muted);margin-right:auto;font-size:12px}.modal footer button{border-radius:4px;justify-content:center;align-items:center;gap:7px;height:40px;padding:0 17px;font-weight:550;display:inline-flex}.modal .secondary{border:1px solid var(--line);color:var(--ink);background:var(--paper)}.modal .primary{color:var(--on-accent);background:var(--accent);border:0}.source-mode-selector{border-bottom:1px solid var(--control-line);grid-template-columns:minmax(240px,1fr) repeat(2,minmax(260px,.9fr));align-items:stretch;gap:10px;padding-bottom:17px;display:grid}.source-mode-heading{flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:4px 8px 4px 0;display:flex}.source-mode-heading span{color:var(--muted);font-size:12px;line-height:1.5}.source-mode-card{border:1px solid var(--control-line);text-align:left;min-width:0;min-height:62px;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.source-mode-card:hover{border-color:var(--control-line);background:var(--paper)}.source-mode-card.selected{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.source-mode-card>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.source-mode-card small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px;overflow:hidden}.source-mode-icon{width:38px;height:38px;color:var(--ink);background:var(--surface);border-radius:4px;place-items:center;display:grid}.designer-project-config{grid-template-columns:minmax(220px,.7fr) minmax(300px,1fr) minmax(300px,1fr);align-items:end;gap:12px;display:grid}.designer-scope-note,.designer-analysis-rule{border:1px solid var(--warning-line);min-height:58px;color:var(--warning);background:var(--warning-soft);border-radius:4px;align-items:center;gap:10px;padding:10px 12px;display:flex}.designer-analysis-rule{color:var(--warning);border-color:var(--warning-line);background:var(--warning-soft)}.designer-scope-note>div,.designer-analysis-rule>div{flex-direction:column;gap:3px;min-width:0;display:flex}.designer-scope-note span,.designer-analysis-rule span{color:var(--warning);font-size:12px;line-height:1.45}.designer-analysis-rule span{color:var(--warning)}.designer-workflow{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.designer-workflow>*{grid-column:1/-1;min-width:0}.effect-upload-card,.effect-analysis-editor,.designer-analysis-placeholder{width:100%}.effect-upload-intro,.effect-analysis-summary{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:11px 15px;display:flex}.effect-upload-intro>div,.effect-analysis-summary>div{min-width:0;color:var(--ink);align-items:center;gap:10px;display:flex}.effect-upload-intro span:not(.stage-only-badge),.effect-analysis-summary span:not(.annotation-state){flex-direction:column;gap:3px;min-width:0;display:flex}.effect-upload-intro strong,.effect-analysis-summary strong{font-size:12px}.effect-upload-intro small,.effect-analysis-summary small{color:var(--muted);font-size:12px}.stage-only-badge{color:var(--ink);background:var(--surface);border-radius:4px;flex:none;padding:5px 8px;font-size:12px;font-weight:550}.effect-upload-zone{border:1px dashed var(--control-line);width:calc(100% - 28px);min-height:112px;color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:12px;margin:14px;padding:18px;display:flex}.effect-upload-zone:hover,.effect-upload-zone.dragging{border-color:var(--control-line);background:var(--surface);box-shadow:none}.effect-upload-zone>span:last-of-type{flex-direction:column;gap:4px;display:flex}.effect-upload-zone strong{font-size:12px}.effect-upload-zone small{color:var(--muted);font-size:12px}.effect-upload-zone input{display:none}.effect-upload-file-input{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.effect-upload-collapse{border:1px solid var(--control-line);min-height:34px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;margin:-6px 14px 14px auto;padding:6px 10px;font-size:12px;font-weight:550;display:inline-flex}.effect-upload-collapse:disabled{opacity:.48;cursor:not-allowed}.effect-pdf-range{border:1px dashed var(--line);color:var(--ink);background:var(--surface);border-radius:4px;flex-direction:column;gap:8px;margin:0 14px 14px;padding:10px 12px;font-size:12px;display:flex}.effect-pdf-range-toggle{color:var(--ink);align-items:center;gap:8px;font-weight:550;display:inline-flex}.effect-pdf-range-fields{color:var(--muted);align-items:center;gap:10px;display:flex}.effect-pdf-range-fields label{min-width:0;min-height:auto;color:var(--ink);align-items:center;gap:6px;font-size:12px;font-weight:550;display:inline-flex}.effect-pdf-range-fields input{border-radius:4px;width:84px;height:30px;padding:0 8px;font-size:12px}.effect-pdf-range-fields input:disabled{opacity:.6}.effect-pdf-range-fields span{color:var(--muted)}.effect-upload-locked{border:1px solid var(--line);color:var(--ink);background:var(--surface);border-radius:4px;align-items:center;gap:8px;margin:14px;padding:10px 12px;font-size:12px;display:flex}.effect-file-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 14px;display:grid}.effect-file-card{border:1px solid var(--line);background:var(--paper);border-radius:4px;min-width:0;overflow:hidden}.effect-file-add-card{border:1px dashed var(--control-line);background:var(--surface);border-radius:4px;grid-template-rows:1fr auto;min-width:0;min-height:280px;display:grid;overflow:hidden}.effect-file-add-card.dragging{border-color:var(--accent);background:var(--accent-soft)}.effect-file-add-card>button:first-child{width:100%;min-height:220px;color:var(--accent-ink);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:22px;display:flex}.effect-file-add-card>button:first-child strong{font-size:14px}.effect-file-add-card>button:first-child small{color:var(--muted);font-size:12px}.effect-file-add-options{border:0;border-top:1px solid var(--line);min-height:43px;color:var(--muted);background:var(--paper);cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:8px 10px;font-size:12px;display:inline-flex}.effect-file-add-card button:hover:not(:disabled){background:var(--hover)}.effect-file-add-card button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.effect-file-add-card button:disabled{opacity:.48;cursor:not-allowed}.effect-file-preview{background:var(--photo-bg);border:0;width:100%;height:150px;padding:0;display:block;position:relative;overflow:hidden}.effect-file-preview img{object-fit:cover;width:100%;height:100%;display:block}.effect-file-preview>span{min-height:27px;color:var(--overlay-ink);background:var(--overlay);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:4px;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:550;display:inline-flex;position:absolute;bottom:8px;right:8px}.effect-file-fields{grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.effect-file-fields label,.effect-image-fields label,.effect-object-form label{color:var(--muted);font-size:12px;font-weight:550}.effect-file-fields input,.effect-image-fields input,.effect-object-form input,.effect-object-form select{border-radius:4px;height:34px;margin-top:5px;padding:0 9px;font-size:12px}.effect-file-card>footer{border-top:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:8px;min-height:43px;padding:8px 10px;display:flex}.effect-file-card>footer>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink);font-size:12px;overflow:hidden}.effect-file-card>footer small{color:var(--muted);margin-left:6px}.effect-file-card>footer button{border:1px solid var(--error-line);min-height:29px;color:var(--error);background:var(--error-soft);border-radius:4px;align-items:center;gap:4px;padding:0 8px;font-size:12px;display:inline-flex}.effect-upload-empty{min-height:100px;color:var(--muted);align-content:center;place-items:center;gap:7px;font-size:12px;display:grid}.effect-angle-tabs{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:9px;display:grid}.effect-angle-tabs button{border:1px solid var(--control-line);text-align:left;min-width:0;min-height:47px;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);column-gap:7px;padding:7px 8px;display:grid}.effect-angle-tabs button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.effect-angle-tabs button>span{width:24px;height:24px;color:var(--on-accent);background:var(--accent);border-radius:4px;grid-row:1/3;align-self:center;place-items:center;font-size:12px;font-weight:550;display:grid}.effect-angle-tabs strong,.effect-angle-tabs small{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.effect-angle-tabs small{color:var(--muted);font-size:12px}.effect-analysis-body{grid-template-columns:minmax(0,1fr) 360px;min-height:590px;display:grid}.effect-analysis-figure{border-right:1px solid var(--line);background:var(--photo-bg);min-width:0;margin:0;padding:15px}.effect-analysis-canvas{border:1px solid var(--line);background:var(--photo-bg);width:100%;box-shadow:none;touch-action:none;border-radius:4px;position:relative;overflow:hidden}.effect-analysis-canvas>img{object-fit:contain;width:100%;height:auto;max-height:none;display:block}.effect-object-layer{pointer-events:none;position:absolute;inset:0}.effect-object-box{border:1.5px solid var(--accent);min-width:28px;min-height:24px;color:var(--accent-ink);background:var(--selection-fill);box-shadow:none;pointer-events:auto;cursor:move;touch-action:none;border-radius:4px;padding:0;position:absolute}.effect-object-box.selected{border-color:var(--accent);background:var(--selection-fill);box-shadow:none;z-index:2}.effect-object-box>span{white-space:nowrap;max-width:calc(100% - 10px);min-height:24px;color:var(--accent-ink);background:var(--paper);box-shadow:none;border-radius:4px;align-items:center;gap:5px;padding:0 7px;font-size:12px;font-weight:550;display:inline-flex;position:absolute;top:5px;left:5px}.effect-object-box>span small{text-overflow:ellipsis;max-width:56px;color:var(--accent-ink);font-size:12px;overflow:hidden}.effect-object-resize{border:2px solid var(--paper);background:var(--accent);width:11px;height:11px;box-shadow:none;cursor:nwse-resize;border-radius:3px;position:absolute;bottom:-5px;right:-5px}.effect-object-box.selected .effect-object-resize{background:var(--accent)}.effect-analysis-figure figcaption{min-height:36px;color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding-top:9px;font-size:12px;display:flex}.effect-analysis-figure figcaption button{border:1px solid var(--control-line);min-height:30px;color:var(--ink);background:var(--photo-bg);border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:12px;display:inline-flex}.effect-analysis-panel{background:var(--paper);min-width:0;max-height:720px;overflow:auto}.effect-image-fields{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.effect-object-heading{justify-content:space-between;align-items:center;gap:10px;padding:11px 12px 8px;display:flex}.effect-object-heading>div{flex-direction:column;gap:2px;display:flex}.effect-object-heading strong{font-size:12px}.effect-object-heading span{color:var(--muted);font-size:12px}.effect-object-heading button{border:1px solid var(--control-line);min-height:31px;color:var(--ink);background:var(--surface);border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:550;display:inline-flex}.effect-object-list{grid-template-columns:1fr 1fr;gap:6px;padding:0 12px 12px;display:grid}.effect-object-list>button{border:1px solid var(--control-line);text-align:left;min-width:0;min-height:38px;color:var(--ink);background:var(--paper);border-radius:4px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);column-gap:6px;padding:6px 7px;display:grid}.effect-object-list>button.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft);box-shadow:none}.effect-object-list>button>span{width:25px;height:25px;color:var(--ink);background:var(--surface);border-radius:4px;grid-row:1/3;align-self:center;place-items:center;display:grid}.effect-object-list strong,.effect-object-list small{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.effect-object-list small{color:var(--muted);font-size:12px}.effect-object-empty{border:1px dashed var(--line);min-height:70px;color:var(--muted);border-radius:4px;grid-column:1/-1;align-content:center;place-items:center;gap:5px;font-size:12px;display:grid}.effect-object-form{border-top:1px solid var(--line);background:var(--paper);flex-direction:column;gap:10px;padding:12px;display:flex}.effect-object-form-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.effect-object-form-title>span{color:var(--ink);align-items:center;gap:6px;display:inline-flex}.effect-object-form-title strong{font-size:12px}.effect-object-form-title>button{border:1px solid var(--error-line);width:30px;height:30px;color:var(--error);background:var(--error-soft);border-radius:4px;place-items:center;display:grid}.effect-form-two{grid-template-columns:1fr 1fr;gap:8px;display:grid}.effect-object-form fieldset{border:1px solid var(--line);border-radius:4px;margin:0;padding:8px}.effect-object-form legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:550}.effect-bound-fields{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.effect-bound-fields label,.effect-bound-fields input{text-align:center}.effect-object-form textarea{border-radius:4px;min-height:58px;margin-top:5px;font-size:12px}.effect-analysis-warnings{border-top:1px solid var(--warning-line);color:var(--warning);background:var(--warning-soft)}.effect-analysis-warnings>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:58px;padding:10px 14px;list-style:none;display:grid}.effect-analysis-warnings>summary::-webkit-details-marker{display:none}.effect-analysis-warnings>summary>span{gap:2px;min-width:0;display:grid}.effect-analysis-warnings>summary strong{color:var(--ink);font-size:14px}.effect-analysis-warnings>summary small{color:var(--muted);font-size:12px;line-height:1.55}.effect-analysis-warnings>summary b{border:1px solid var(--warning-line);color:var(--warning);background:var(--paper);white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:12px}.effect-analysis-warnings>summary svg{transition:transform .18s}.effect-analysis-warnings[open]>summary svg{transform:rotate(180deg)}.effect-analysis-warnings>ul{color:var(--ink);gap:7px;margin:0;padding:0 20px 12px 40px;display:grid}.effect-analysis-warnings>ul li{padding-left:3px;font-size:13px;line-height:1.55}.effect-analysis-footer{border-top:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:11px 14px;display:flex}.effect-analysis-footer>div{flex-direction:column;gap:3px;min-width:0;display:flex}.effect-analysis-footer strong{font-size:12px}.effect-analysis-footer span{color:var(--muted);font-size:12px}.effect-image-missing{min-height:420px;color:var(--muted);place-items:center;display:grid}.next-stage-boundary{border:1px dashed var(--line);min-height:76px;color:var(--muted);background:var(--surface);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.next-stage-boundary>span{width:40px;height:40px;color:var(--muted);background:var(--surface);border-radius:4px;place-items:center;display:grid}.next-stage-boundary>div{min-width:0}.next-stage-boundary strong{font-size:12px}.next-stage-boundary p{color:var(--muted);margin:4px 0 0;font-size:12px}.next-stage-boundary b{color:var(--muted);background:var(--surface);white-space:nowrap;border-radius:4px;padding:6px 9px;font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1180px){body{min-width:0}main{width:min(920px,100% - 30px)}.project-card{grid-template-columns:1fr}.config-grid{grid-template-columns:repeat(2,1fr)}.mode-section{padding-top:14px}.field.wide{grid-column:auto}.custom-prompt-field{grid-column:1/-1}.source-mode-selector{grid-template-columns:1fr 1fr}.source-mode-heading{grid-column:1/-1}.designer-project-config{grid-template-columns:1fr 1fr}.designer-project-config>.field{grid-column:1/-1}.effect-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.effect-analysis-body{grid-template-columns:minmax(0,1fr) 330px}.workflow-line{grid-template-columns:repeat(6,1fr);display:grid}.flow-arrow{display:none}.stage{padding:9px}.stage-icon{width:31px;height:31px}.stage span{display:none}.work-grid{grid-template-columns:1fr}.input-card,.analysis-card,.result-card,.input-card.compact,.analysis-card.annotation-card{grid-column:1/-1}.work-grid>.color-plan-card{width:100%}.work-grid>.input-card:not(.compact) .dropzone{min-height:260px}.work-grid>.analysis-card:not(.annotation-card) .placeholder,.work-grid>.result-card>.placeholder{min-height:220px}.batch-summary.has-video{grid-template-columns:repeat(2,1fr)}}@media (width<=920px){.region-selector-body{grid-template-columns:1fr}.region-figure{border-right:0;border-bottom:1px solid var(--line)}}@media (width<=620px){.region-reference-grid{grid-template-columns:1fr}}@media (width<=720px){.topbar{padding:0 16px}.brand span,.cloud-status,.install-button{display:none}.top-actions{gap:6px}.top-actions .icon-button{justify-content:center;width:36px;height:36px;padding:0;font-size:0}main{padding-top:28px}.hero{flex-direction:column;align-items:stretch}.run-button{width:100%}.project-card,.config-grid,.work-grid,.source-mode-selector,.designer-project-config{grid-template-columns:1fr}.source-mode-heading,.designer-project-config>.field{grid-column:auto}.effect-file-grid,.effect-angle-tabs,.effect-analysis-body,.effect-image-fields,.effect-form-two{grid-template-columns:1fr}.effect-analysis-figure{border-right:0;border-bottom:1px solid var(--line)}.effect-analysis-panel{max-height:none}.effect-object-list{grid-template-columns:1fr}.effect-analysis-footer,.next-stage-boundary{grid-template-columns:1fr;align-items:stretch}.effect-analysis-footer{flex-direction:column}.effect-analysis-footer button{justify-content:center;width:100%}.next-stage-boundary>b{justify-self:start}.mode-section{grid-template-columns:1fr;grid-template-areas:"mode-heading""mode-cards""review-mode""step-heading""step-grid"}.workflow-line{grid-template-columns:1fr}.stage{height:56px}.input-card,.analysis-card,.result-card,.input-card.compact,.analysis-card.annotation-card{grid-column:auto}.annotation-workspace,.annotation-footer,.region-selector-body{grid-template-columns:1fr}.annotation-figure,.region-figure{border-right:0;border-bottom:1px solid var(--line)}.annotation-panel{max-height:none}.annotation-footer .annotation-actions{border-top:1px solid var(--line);border-left:0;width:100%}.region-selector>footer,.room-review-gate{flex-direction:column;align-items:stretch}.room-review-actions{flex-direction:column;width:100%}.annotation-actions button,.region-selector>footer button,.room-review-actions>button{flex:1 1 0;justify-content:center;width:100%;min-height:44px}.two-fields,.prompt-fields,.provider-cards,.video-gallery,.batch-summary.has-video{grid-template-columns:1fr}.advanced-settings input:not([type=checkbox]):not([type=range]),.advanced-settings select{min-height:44px;font-size:16px}.prompt-fields label.full{grid-column:auto}.launch-bar,.launch-actions,.quality-gate,.quality-actions,.connection-check{flex-direction:column;align-items:stretch}.launch-actions,.quality-actions{width:100%}.stop-button,.quality-actions button{justify-content:center}.result-toolbar{flex-direction:column;align-items:flex-start}.connection-check>div:last-child{justify-content:flex-end}.image-lightbox{padding:12px}.lightbox-stage{width:calc(100vw - 24px);height:calc(100vh - 24px)}.lightbox-toolbar{grid-template-columns:1fr auto}.video-option{grid-template-columns:auto auto 1fr}.video-option i{display:none}}.panorama-stage-resume{border:1px solid var(--success);background:var(--success-soft);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.panorama-stage-resume>svg{color:var(--success)}.panorama-stage-resume div{gap:3px;display:grid}.panorama-stage-resume span{color:var(--muted);font-size:12px}.panorama-stage-resume button{border:1px solid var(--ink);min-height:42px;color:var(--paper);background:var(--ink);cursor:pointer;border-radius:7px;align-items:center;gap:7px;padding:0 15px;font-weight:700;display:flex}.panorama-lighting-workflow .designer-launch-bar{top:calc(var(--workspace-topbar-height,60px) + 10px);z-index:18;position:sticky}.panorama-lighting-workflow .run-button{min-height:56px;font-size:15px}#panorama-analysis-entry{scroll-margin-top:calc(var(--workspace-topbar-height,60px) + 24px)}#panorama-analysis-entry:focus{outline:2px solid var(--primary);outline-offset:3px}.panorama-feedback{z-index:70;top:calc(var(--workspace-topbar-height,60px) + 12px);width:min(520px,100vw - 36px);margin:0;position:fixed;right:18px;box-shadow:0 14px 36px #00000029}.panorama-feedback .feedback-dismiss{background:0 0;border:0;min-width:32px;padding:0 8px;font-size:20px}.panorama-lighting-workflow .effect-analysis-editor{overflow:hidden}.panorama-lighting-workflow .effect-analysis-body{height:min(64vh,680px);min-height:0}.panorama-lighting-workflow .effect-analysis-figure{overscroll-behavior:contain;height:100%;min-height:0;overflow:auto}.panorama-lighting-workflow .effect-analysis-canvas>img{object-fit:contain;max-height:calc(min(64vh,680px) - 70px)}.panorama-lighting-workflow .effect-analysis-panel{height:100%;overflow:auto}.panorama-lighting-workflow .effect-analysis-footer{z-index:4;position:sticky;bottom:0}@media (prefers-reduced-motion:reduce){.effect-analysis-warnings>summary svg{transition:none}}@media (width<=700px){.panorama-stage-resume{grid-template-columns:1fr}.panorama-stage-resume button{justify-content:center}}@media (width<=720px){.work-grid>.input-card:not(.compact) .dropzone{min-height:220px}.work-grid>.analysis-card:not(.annotation-card) .placeholder,.work-grid>.result-card>.placeholder{min-height:180px}.custom-prompt-field,.designer-custom-prompt-field{grid-column:auto}.effect-upload-collapse,.effect-file-add-options{min-height:44px}.room-version-gallery,.room-version-main{padding:8px}.room-version-main-meta{flex-direction:column;align-items:stretch}.room-version-main-actions{width:100%}.room-version-main-actions>button,.current-version-note,.historical-version-note{flex:1 1 0;min-height:44px}.room-version-history-title{flex-direction:column;align-items:flex-start;gap:4px}.room-version-thumbnails{grid-auto-columns:minmax(138px,46vw)}.room-version-thumbnails>li>button{min-height:44px}.region-selector>footer .region-actions{flex-direction:column;width:100%}.render-field select,.render-field textarea{font-size:16px}.lighting-config-body{grid-template-columns:1fr}.lighting-source{border-right:0;border-bottom:1px solid var(--line)}.lighting-group-list,.lighting-secondary-settings{grid-template-columns:1fr}.setting-choice-grid.tv{grid-template-columns:repeat(2,minmax(0,1fr))}.lighting-configurator>footer{flex-direction:column;align-items:stretch}.lighting-actions{flex-direction:column;width:100%}.lighting-actions button,.lighting-tabs button,.setting-choice-grid button,.lighting-section-heading>button{min-height:44px}.lighting-text-field input,.lighting-text-field textarea,.lighting-group-parameters select{font-size:16px}.floor-structure-heading{flex-direction:column;align-items:stretch}.floor-mode-switch{align-self:stretch}.floor-mode-switch button{flex:1;min-height:44px}.floor-single-note{margin-left:0}.floor-manager-actions{align-items:stretch}.floor-manager-actions label{width:100%}.floor-manager-actions input{width:100%;min-height:44px}.floor-manager-actions button{flex:145px;justify-content:center;min-height:44px}}.model-picker{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.model-picker select{width:100%;min-width:0;min-height:44px}.model-picker small{grid-column:1/-1}.model-picker button{white-space:nowrap;color:#263244;cursor:pointer;background:#fff;border:1px solid #d7dde6;border-radius:6px;min-height:44px;padding:8px 12px}.model-picker button:disabled{opacity:.55;cursor:wait}@media (width<=600px){.model-picker{grid-template-columns:minmax(0,1fr)}.model-picker button{justify-self:start}}.input-card .floorplan-launch-bar{border:0;border-top:1px solid var(--line);border-radius:0;flex-direction:column;align-items:stretch;gap:14px;margin:0;padding:18px}.floorplan-launch-bar .launch-state{align-items:flex-start}.floorplan-launch-bar .ready-dot{flex-shrink:0;margin-top:5px}.floorplan-launch-bar .launch-state small{overflow-wrap:anywhere;line-height:1.6}.floorplan-launch-bar .launch-actions{flex-direction:column;align-items:stretch}.floorplan-launch-bar .run-button{white-space:normal;justify-content:center;width:100%;min-height:48px}.floorplan-launch-bar .stop-button{justify-content:center;min-height:44px}.effect-upload-card .designer-launch-bar{border:0;border-top:1px solid var(--line);border-radius:0;flex-direction:column;align-items:stretch;gap:14px;margin:0;padding:18px}.designer-launch-bar .launch-state{align-items:flex-start}.designer-launch-bar .ready-dot{flex-shrink:0;margin-top:5px}.designer-launch-bar .launch-state small{overflow-wrap:anywhere;line-height:1.6}.designer-launch-bar .launch-actions{flex-direction:column;align-items:stretch}.designer-launch-bar .run-button{white-space:normal;justify-content:center;width:100%;min-height:48px}.effect-analysis-editor{overflow:visible}.effect-analysis-editor .effect-angle-tabs{top:var(--workspace-topbar-height,60px);z-index:19;border-inline:1px solid var(--line);position:sticky;box-shadow:0 5px 12px #0000001a}.effect-analysis-editor .effect-angle-tabs button{scroll-margin-top:calc(var(--workspace-topbar-height,60px) + 12px)}.effect-object-box>span{border:1px solid var(--control-line);place-items:center;width:27px;max-width:none;height:27px;min-height:27px;padding:0;line-height:1;display:grid;top:4px;left:4px}.effect-object-box.selected>span{width:27px;max-width:none}.effect-object-legend{flex-wrap:wrap;gap:6px;padding:10px 0 4px;display:flex}.effect-object-legend button{border:1px solid var(--control-line);max-width:100%;min-height:34px;color:var(--ink);background:var(--paper);text-align:left;border-radius:4px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:inline-flex}.effect-object-legend button.active{border-color:var(--object-selected);color:var(--object-selected-ink);background:var(--object-selected-soft)}.effect-object-legend b{min-width:20px;height:20px;color:var(--on-accent);background:var(--accent);border-radius:3px;place-items:center;font-size:11px;display:grid}.effect-object-legend button.active b{background:var(--object-selected)}.effect-object-legend span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.effect-object-legend small{color:var(--muted);white-space:nowrap}.effect-strip-annotation{pointer-events:none;position:absolute;inset:0}.effect-strip-annotation.selected{z-index:3}.effect-strip-line{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.effect-strip-halo{stroke:var(--paper);stroke-width:7px;fill:none;pointer-events:none}.effect-strip-stroke{stroke:var(--accent);stroke-width:3.5px;stroke-dasharray:9 5;stroke-linecap:round;fill:none;pointer-events:none}.effect-strip-annotation.selected .effect-strip-stroke{stroke:var(--object-selected);stroke-width:4px;stroke-dasharray:none}.effect-strip-hit{stroke:#0000;stroke-width:26px;fill:none;pointer-events:stroke;cursor:move;touch-action:none}.effect-strip-endpoint{border:2px solid var(--paper);width:28px;height:28px;color:var(--on-accent);background:var(--accent);box-shadow:0 0 0 1px var(--control-line);pointer-events:auto;touch-action:none;cursor:grab;border-radius:50%;place-items:center;padding:0;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)}.effect-strip-endpoint.end{width:22px;height:22px}.effect-strip-annotation.selected .effect-strip-endpoint{background:var(--object-selected)}.effect-strip-endpoint:focus-visible,.effect-object-legend button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.effect-strip-help{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5;display:block}.effect-object-heading{flex-wrap:wrap}.effect-object-heading>div{flex:100%}:root,html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#fff;--paper:#fff;--nav:#f3f4f6;--toolbar:#fff;--surface:#f6f7f9;--hover:#eceff3;--ink:#242629;--muted:#606773;--line:#dce0e6;--control-line:#818793;--track:#818793;--accent:#245de6;--accent-hover:#194cc9;--accent-soft:#edf2ff;--accent-ink:#1849c1;--on-accent:#fff;--thumb:#fff;--focus:#245de6;--photo-bg:#e9e9e9;--selection-fill:#245de629;--selection-strong:#245de640;--room-selected:#0b6e70;--room-selected-fill:#0b6e702e;--room-selected-soft:#e6f3f1;--room-selected-ink:#07575a;--object-selected:#ea580c;--object-selected-fill:#f973164d;--object-selected-label:#9a3412;--object-selected-ink:#9a3412;--object-selected-soft:#fff0e5;--success:#236640;--success-soft:#edf7ef;--success-line:#4d8260;--warning:#765214;--warning-soft:#fff6e5;--warning-line:#9a762f;--error:#a93630;--error-soft:#fff0ee;--error-line:#b64f47;--disabled-ink:#676d77;--disabled-bg:#e8ebef;--overlay:#191b20;--overlay-ink:#fff;--overlay-line:#8d929b;--scrim:#10121694;--lightbox-scrim:#0c0e12eb;--nav-width:224px;--inspector-width:340px;--topbar-height:60px;font-synthesis:none;color:var(--ink);background:var(--canvas);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#191a1c;--paper:#252628;--nav:#202123;--toolbar:#202123;--surface:#2c2d30;--hover:#333539;--ink:#eeeef0;--muted:#b5b7bd;--line:#424449;--control-line:#8d8e95;--track:#8d8e95;--accent:#e6ad59;--accent-hover:#f0bc70;--accent-soft:#3b3225;--accent-ink:#f0bd73;--on-accent:#24211c;--thumb:#fff;--focus:#edb663;--photo-bg:#141517;--selection-fill:#e6ad5929;--selection-strong:#e6ad5940;--room-selected:#69c7be;--room-selected-fill:#69c7be36;--room-selected-soft:#173a3a;--room-selected-ink:#a8e2dc;--object-selected-ink:#ffb78a;--object-selected-soft:#48291d;--success:#8ed1a5;--success-soft:#243c2d;--success-line:#7bab87;--warning:#f2c47c;--warning-soft:#3e3322;--warning-line:#c29858;--error:#ffaaa2;--error-soft:#462c2c;--error-line:#d48f88;--disabled-ink:#afb2b9;--disabled-bg:#36383e;--overlay:#101114;--scrim:#090a0db8}body{background:var(--canvas);min-width:0;min-height:100dvh}html{scroll-padding-top:calc(var(--workspace-topbar-height,60px) + 16px)}button,input,select,textarea{color:inherit}button{transition:background-color .15s,border-color .15s,color .15s}button svg,a svg,label svg{flex-shrink:0}button:not(:disabled):hover{border-color:var(--control-line)}button,input,select,textarea,summary,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:3px;box-shadow:none}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{min-width:0;min-height:40px;color:var(--ink);background:var(--paper);border:1px solid var(--control-line);border-radius:4px;font-size:14px}textarea{line-height:1.7}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input[readonly]{color:var(--muted);background:var(--surface)}input:focus,select:focus,textarea:focus{border-color:var(--focus);box-shadow:none}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}input[type=range]{box-shadow:none;background:0 0;border:0;padding:0}input[type=checkbox]{width:17px;height:17px}select{padding-right:30px}select:not(.select-wrap select){appearance:auto}button:disabled,input:disabled,select:disabled,textarea:disabled,.lighting-configurator button:disabled,.lighting-actions button:disabled,.room-version-main-actions>button:disabled,.region-selector>footer button:disabled{color:var(--disabled-ink);background-color:var(--disabled-bg);border-color:var(--control-line);opacity:1;box-shadow:none;cursor:not-allowed}button:disabled svg{opacity:.7}[aria-invalid=true],input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell.with-workflow-sidebar{grid-template-columns:var(--nav-width) minmax(0, 1fr);min-height:100dvh;display:grid}.workflow-sidebar{border-right:1px solid var(--line);background:var(--nav);flex-direction:column;align-self:start;gap:0;min-width:0;height:100dvh;padding:28px 14px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.workflow-brand{color:var(--ink);align-items:center;gap:10px;margin-bottom:26px;padding:0 10px;display:flex}.workflow-brand strong{letter-spacing:.01em;font-size:21px;font-weight:600}.workflow-brand small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.workflow-brand>svg{width:22px;height:22px;color:var(--accent-ink)}.workflow-project{text-align:left;border:1px solid var(--control-line);width:100%;min-width:0;min-height:68px;color:var(--ink);background:var(--paper);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 28px;padding:10px 12px;display:flex}.workflow-project>div,.workflow-project>span{min-width:0}.workflow-project strong{overflow-wrap:anywhere;font-size:14px;font-weight:550;display:block}.workflow-project small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.workflow-project:hover{background:var(--hover)}.workflow-nav{flex-direction:column;gap:6px;margin:0;padding:0;display:flex;position:relative}.workflow-nav-step{text-align:left;width:100%;min-width:0;min-height:76px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:3px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:14px 10px;display:grid;position:relative}.workflow-nav-step:not(:last-child):before{content:"";border-left:1px solid var(--control-line);pointer-events:none;height:28px;position:absolute;top:52px;left:22px}.workflow-nav-step.selected{color:var(--ink);background:var(--accent-soft)}.workflow-nav-step.selected:after{content:"";background:var(--accent);border-radius:2px;width:3px;position:absolute;inset:0 auto 0 -5px}.workflow-nav-step:hover:not(:disabled):not(.selected){background:var(--hover);border-color:#0000}.workflow-step-marker{z-index:1;border:1px solid var(--control-line);width:23px;height:23px;color:var(--muted);background:var(--nav);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:12px;display:grid}.workflow-step-marker svg{width:14px;height:14px}.workflow-nav-step.selected .workflow-step-marker{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.workflow-nav-step.done .workflow-step-marker{color:var(--on-accent);border-color:var(--accent);background:var(--accent)}html[data-theme=dark] .workflow-nav-step.done .workflow-step-marker{color:var(--muted);border-color:var(--control-line);background:var(--nav)}.workflow-step-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.workflow-step-copy strong{font-size:14px;font-weight:550;line-height:1.4}.workflow-step-copy small,.workflow-step-copy>span{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.5}.workflow-nav-step.skipped{color:var(--muted)}.workflow-nav-step.skipped .workflow-step-marker{border-style:dashed}.workflow-nav-step:disabled{background:0 0;border-color:#0000}.workflow-sidebar-footer{flex-direction:column;gap:8px;margin-top:auto;padding:30px 8px 0;display:flex}.workflow-sidebar-footer button{text-align:left;min-height:38px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:9px;padding:7px 2px;font-size:14px;display:flex}.workflow-sidebar-footer button:hover{background:var(--hover)}.workflow-sidebar-footer svg{width:17px;height:17px}.workspace-main{min-width:0}.workspace-main>.topbar,.topbar{height:var(--topbar-height);min-height:var(--topbar-height);background:var(--toolbar);border-bottom:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;gap:20px;padding:0 24px}.workspace-project-title{min-width:0;color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.workspace-project-title h1{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:550;overflow:hidden}.workspace-project-title>span{white-space:nowrap}.top-actions{gap:10px;min-width:0}.brand-mark{color:var(--on-accent);background:var(--accent)}.icon-button{border:1px solid var(--control-line);min-height:37px;color:var(--ink);background:var(--paper);white-space:nowrap;border-radius:4px;justify-content:center;padding:7px 11px;font-size:14px;line-height:1.4}.icon-button:hover:not(:disabled){background:var(--hover)}.cloud-status{border-radius:4px;padding:6px 9px;font-size:12px}.theme-switch{background:var(--surface);border:1px solid var(--line);border-radius:4px;flex-shrink:0;gap:2px;padding:3px;display:flex}.theme-switch .theme-option{min-height:30px;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:4px 9px;font-size:14px;display:flex}.theme-switch .theme-option[aria-pressed=true]{color:var(--ink);border-color:var(--control-line);background:var(--paper)}.theme-switch .theme-option:hover{color:var(--ink)}.workspace-main main,main{width:100%;max-width:none;margin:0;padding:24px 24px 48px}.hero{align-items:center;gap:20px;margin-bottom:20px}.hero h1{letter-spacing:.01em;max-width:none;margin:0 0 8px;font-size:26px;font-weight:600;line-height:1.3}.hero p{color:var(--muted);font-size:14px;line-height:1.7}.hero .eyebrow{letter-spacing:0;color:var(--muted);margin-bottom:6px;font-size:12px}.run-button{border:1px solid var(--accent);min-width:130px;height:auto;min-height:40px;color:var(--on-accent);background:var(--accent);border-radius:4px;padding:10px 16px;font-size:14px}.run-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.project-settings-panel{border:1px solid var(--line);background:var(--paper);border-radius:4px;margin:0 0 20px}.project-settings-panel>summary{cursor:pointer;min-height:50px;color:var(--ink);align-items:center;gap:12px;padding:12px 16px;font-size:14px;list-style:none;display:flex}.project-settings-panel>summary::-webkit-details-marker{display:none}.project-settings-panel>summary>strong{font-weight:550}.project-settings-panel>summary>span{min-width:0;color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.project-settings-panel>summary>span strong{color:var(--ink);font-size:14px;font-weight:550}.project-settings-panel>summary small{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:12px}.project-settings-panel>summary>svg{color:var(--muted);flex-shrink:0;margin-left:auto;transition:transform .15s}.project-settings-panel[open]>summary>svg{transform:rotate(180deg)}.project-settings-panel[open]>summary{border-bottom:1px solid var(--line)}.project-settings-panel .project-card{box-shadow:none;background:var(--paper);border:0;border-radius:0;margin:0;padding:20px}.project-card{background:var(--paper);margin-top:0;padding:20px}.config-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.source-mode-selector{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding-bottom:18px}.source-mode-heading{grid-column:1/-1;padding:0}.source-mode-heading strong{font-size:14px}.source-mode-card{border-radius:4px;min-height:72px;padding:12px}.source-mode-card strong{font-size:14px}.source-mode-card small{white-space:normal;line-height:1.6}.source-mode-icon{width:28px;height:28px;color:var(--muted);background:0 0}.source-mode-card.selected .source-mode-icon{color:var(--accent-ink);background:0 0}.designer-project-config{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px}.designer-scope-note,.designer-analysis-rule{background:var(--surface);border-color:var(--line);min-height:72px;color:var(--ink);padding:12px}.designer-scope-note strong,.designer-analysis-rule strong{font-size:14px}.designer-scope-note span,.designer-analysis-rule span{color:var(--muted)}.field label,.modal>label,.two-fields label{color:var(--ink);font-size:14px;font-weight:500}.field label small,.field>small{color:var(--muted);font-size:12px;line-height:1.6}.mode-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 20px}.mode-card{gap:6px;min-height:82px;padding:12px}.mode-card strong,.mode-heading strong{font-size:14px}.mode-card span,.mode-card small,.review-mode-switch small,.output-step-copy small{white-space:normal;line-height:1.5}.review-mode-switch{background:0 0;border:0;padding:0}.review-mode-switch>.review-mode-lock{border-color:var(--line);background:var(--surface);border-radius:4px;min-height:60px}.review-mode-switch>button{border-radius:4px}.review-mode-switch>button.selected{background:var(--paper)}.review-mode-switch strong,.output-step-copy strong{white-space:normal;font-size:14px}.output-step-heading{align-items:start}.output-step-heading strong{font-size:14px}.output-step-heading span{font-size:12px}.output-step-toggle{grid-template-columns:minmax(0,1fr) auto;min-height:70px;padding:10px}.output-step-icon{display:none}.output-step-toggle>input[type=checkbox]{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;opacity:0;pointer-events:none;border:0;width:1px;min-width:0;height:1px;min-height:0;margin:-1px;padding:0;position:absolute;overflow:hidden}.output-switch{border:1px solid var(--control-line);background:var(--track);width:36px;height:22px;padding:0 3px}.output-switch:before,.output-step-toggle.enabled .output-switch:before,.output-step-toggle.required .output-switch:before{content:"";width:16px;height:16px;box-shadow:none;background:var(--thumb)}.output-step-toggle.enabled .output-switch,.output-step-toggle.required .output-switch{background:var(--accent);border-color:var(--accent)}.output-step-toggle input:focus-visible+.output-switch{outline:2px solid var(--focus);outline-offset:3px}.output-step-toggle.required{color:var(--muted);background:var(--surface)}.launch-bar{background:var(--surface);border-radius:4px;margin-bottom:20px;padding:14px 16px}.launch-state strong{font-size:14px}.launch-state small,.run-safety{font-size:12px;line-height:1.6}.launch-actions{flex-wrap:wrap;justify-content:flex-end}.ready-dot{box-shadow:none}.stop-button{min-height:40px;font-size:14px}.work-grid,.designer-workflow{gap:20px}.canvas-card,.region-selector,.lighting-configurator,.room-version-group{border-color:var(--line);box-shadow:none;background:var(--paper);border-radius:4px}.card-header{gap:12px;height:auto;min-height:54px;padding:14px 16px}.card-header h2{font-size:15px;font-weight:550}.card-header small{white-space:normal;text-align:right;max-width:48%;font-size:12px}.card-header span{letter-spacing:0;font-size:12px}.dropzone,.placeholder{color:var(--muted);background:var(--surface);font-size:14px}.placeholder p,.dropzone strong{font-size:14px;line-height:1.7}.dropzone span{font-size:12px}.upload-icon{width:36px;height:36px;color:var(--muted);background:0 0}.effect-upload-zone{border-color:color-mix(in srgb, var(--accent) 48%, var(--line));background:color-mix(in srgb, var(--accent-soft) 58%, var(--paper))}.effect-upload-zone .upload-icon{border:1px solid color-mix(in srgb, var(--accent) 25%, var(--line));width:40px;height:40px;color:var(--accent-ink);background:var(--accent-soft);border-radius:6px}.effect-upload-zone strong{color:var(--ink);font-weight:600}.effect-upload-zone:hover,.effect-upload-zone.dragging{border-color:var(--accent);background:var(--accent-soft)}.effect-upload-zone.processing:disabled{color:var(--ink);border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent-soft) 72%, var(--paper));opacity:1;cursor:wait}.effect-pdf-progress{width:min(440px,70vw)}.effect-pdf-progress-track{background:var(--line);border-radius:99px;width:100%;height:5px;margin-top:5px;display:block;overflow:hidden}.effect-pdf-progress-track>i{border-radius:inherit;background:var(--accent);height:100%;transition:width .18s;display:block}.effect-file-add-card{border-color:color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface))}.dropzone.dragging{border-color:var(--accent);box-shadow:none;background:var(--accent-soft)}.dropzone.dragging:after{color:var(--on-accent);background:var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none;font-size:14px}.file-toolbar{gap:12px;padding:12px}.file-toolbar strong{max-width:100%;font-size:14px}.file-toolbar span{font-size:12px}.file-action,.annotation-intro>button,.annotation-confirm-step,.confirm-annotations,.region-selector>footer button,.room-review-actions>button,.result-toolbar button,.quality-actions button,.effect-analysis-footer button,.effect-object-heading button,.effect-analysis-figure figcaption button,.room-version-main-actions>button{border-radius:4px;height:auto;min-height:38px;padding:8px 11px;font-size:14px;line-height:1.45}.annotation-intro,.effect-upload-intro,.effect-analysis-summary{padding:14px 16px}.annotation-intro p,.effect-upload-intro strong,.effect-analysis-summary strong{white-space:normal;font-size:14px;line-height:1.6}.annotation-state,.region-status,.stage-only-badge,.lighting-config-status{white-space:normal;font-size:12px;font-weight:500;line-height:1.5}.annotation-workspace,.annotation-footer{grid-template-columns:minmax(0,1fr) 320px}.region-selector-body,.effect-analysis-body{grid-template-columns:minmax(0, 1fr) var(--inspector-width)}.annotation-figure,.region-figure,.effect-analysis-figure{background:var(--surface);padding:18px}.annotation-panel,.effect-analysis-panel{max-height:none}.annotation-form,.region-controls,.effect-object-form{gap:14px;padding:16px}.annotation-room-list,.region-tabs{gap:8px;padding:12px}.annotation-room-list button,.region-tabs button{height:auto;min-height:42px;padding:8px}.annotation-room-list button strong,.region-tabs button strong{font-size:12px}.annotation-room-list button>span,.region-tabs button .region-tab-icon{width:22px;height:22px;color:var(--accent-ink);background:var(--accent-soft)}.annotation-form-heading strong,.region-controls-heading strong,.render-settings-title strong,.effect-object-heading strong,.effect-object-form-title strong{font-size:14px}.annotation-form>label,.render-field,.camera-parameter-grid label,.camera-fov,.camera-height,.effect-file-fields label,.effect-image-fields label,.effect-object-form label{color:var(--ink);font-size:14px;font-weight:500}.annotation-form legend,.region-controls legend,.effect-object-form legend{font-size:12px}.bounds-grid,.effect-bound-fields{gap:8px}.bounds-grid input,.effect-bound-fields input{padding:0 4px;font-size:12px}.annotation-footer strong,.region-selector>footer strong,.effect-analysis-footer strong{font-size:14px}.annotation-footer span,.region-selector>footer span,.effect-analysis-footer span{font-size:12px;line-height:1.65}.region-selector>header strong{font-size:15px}.region-selector>header span:not(.region-status){white-space:normal;font-size:12px}.region-selector>header,.region-source-note{background:var(--paper)}.region-source-note span{white-space:normal}.add-render-space{border-bottom:1px solid var(--line);padding:12px}.add-render-space-trigger{border:1px solid var(--accent);width:100%;min-height:44px;color:var(--accent-ink);background:var(--accent-soft);border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:14px;display:flex}.add-render-space-trigger:hover:not(:disabled){background:var(--hover)}.add-render-space-form{gap:12px;margin-top:12px;display:grid}.add-render-space-field{gap:6px;min-width:0;font-size:14px;display:grid}.add-render-space-field input,.add-render-space-field select{width:100%;min-width:0}.add-render-space-hint{color:var(--muted);overflow-wrap:anywhere;margin:8px 0 0;font-size:12px;line-height:1.6}.add-render-space-error{color:var(--error);margin:0;font-size:12px;line-height:1.6}.add-render-space-actions{flex-wrap:wrap;gap:8px;display:flex}.add-render-space-actions button{border:1px solid var(--control-line);border-radius:4px;min-height:44px;padding:9px 12px;font-size:14px}.add-render-space-actions .add-render-space-submit{color:var(--on-accent);background:var(--accent);border-color:var(--accent);flex:1}.add-render-space-cancel{color:var(--ink);background:var(--paper)}.region-heading-icon,.lighting-heading-icon{width:30px;height:30px;color:var(--muted);background:0 0}.region-controls p,.render-field small{font-size:12px;line-height:1.7}.render-focus-chips button{min-height:36px;font-size:12px}.key-space-toggle strong{font-size:14px}.key-space-toggle small{font-size:12px;line-height:1.6}.quality-copy strong,.room-review-copy strong,.result-toolbar strong{font-size:14px}.quality-copy p,.room-review-copy p{color:var(--muted);font-size:12px;line-height:1.7}.quality-gate,.room-review-gate{padding:16px}.quality-checks span,.room-review-items button{font-size:12px;line-height:1.5}.quality-checks span{color:var(--warning);background:var(--warning-soft)}.quality-gate.approved .quality-checks span{color:var(--success);background:var(--success-soft)}.room-review-items button{min-height:36px}.room-box,.region-box,.effect-object-box{color:var(--accent-ink);border-color:var(--accent);background:var(--selection-fill);box-shadow:none}.room-box:hover,.room-box.key-space,.region-box:hover{border-color:var(--accent);background:var(--selection-strong)}.room-box.selected,.region-box.selected,.effect-object-box.selected{border-color:var(--accent);background:var(--selection-strong);box-shadow:inset 0 0 0 1px var(--accent)}.room-box-label,.region-box>span,.effect-object-box>span{color:var(--ink);background:var(--paper);border-color:var(--control-line);box-shadow:none}.room-box-label strong,.region-box>span,.effect-object-box>span{font-size:12px}.room-box-label b,.region-box>span b{color:var(--on-accent);background:var(--accent)}.resize-handle:after,.region-resize:after,.effect-object-resize,.effect-object-box.selected .effect-object-resize{background:var(--accent);border-color:var(--paper);box-shadow:none}.effect-object-box.selected,.effect-object-box.selected:hover{border:3px solid var(--object-selected);background:var(--object-selected-fill);box-shadow:0 0 0 2px #fff,0 0 0 3px #00000073}.effect-object-box.selected>span{color:#fff;background:var(--object-selected-label);width:max-content;max-width:none;font-weight:700}.effect-object-box.selected>span small{color:#fff}.effect-analysis-editor .effect-object-box>span,.effect-analysis-editor .effect-object-box.selected>span{place-items:center;width:27px;max-width:27px;min-height:27px;padding:0;display:grid}.effect-object-box.selected .effect-object-resize{background:var(--object-selected);border-color:#fff}.effect-object-list>button.active,.effect-object-list>button.active:hover{color:var(--object-selected-ink);border-color:var(--object-selected);background:var(--object-selected-soft);box-shadow:inset 3px 0 0 var(--object-selected)}.effect-object-list>button.active>span{color:#fff;background:var(--object-selected-label)}.room-box.selected,.room-box.selected:hover{border:2px solid var(--room-selected);background:var(--room-selected-fill);box-shadow:0 0 0 1px var(--paper), 0 0 0 2px var(--room-selected)}.room-box.selected .room-box-label b{background:var(--room-selected);color:var(--paper)}.room-box.selected .room-resize-handle:after{background:var(--room-selected)}.annotation-room-list button.active,.annotation-room-list button.active:hover{border-color:var(--room-selected);color:var(--room-selected-ink);background:var(--room-selected-soft);box-shadow:inset 3px 0 0 var(--room-selected)}.annotation-room-list button.active>span{background:var(--room-selected);color:var(--paper)}.camera-marker{color:var(--on-accent);background:var(--accent)}.camera-target{color:var(--accent-ink)}.camera-target:before{border-color:var(--accent);background:var(--paper);box-shadow:none}.room-camera-marker{color:var(--accent-ink);background:var(--paper)}.room-camera-marker:hover{color:var(--on-accent);background:var(--accent)}.camera-guide-svg polygon{fill:var(--selection-fill);stroke:var(--accent)}.camera-guide-svg line{stroke:var(--accent)}.camera-guide-svg marker path{fill:var(--accent)}.camera-fov output{color:var(--ink)}.annotation-legend{font-size:12px;line-height:1.5}.annotation-legend i,.annotation-legend i.key{border-color:var(--accent);background:var(--selection-fill)}.annotation-legend small{font-size:12px}.effect-angle-tabs{gap:8px;padding:12px}.effect-angle-tabs button{min-height:62px;padding:10px}.effect-angle-tabs strong{font-size:14px}.effect-angle-tabs button>span{color:var(--accent-ink);background:var(--accent-soft)}.effect-object-list{gap:8px}.effect-object-list>button{min-height:58px;padding:9px}.effect-object-list strong,.effect-object-list small{font-size:12px}.effect-analysis-panel .effect-object-list{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr))}.effect-object-list strong,.effect-object-list small{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.5;overflow:visible}.effect-object-list>button{align-content:start;row-gap:4px}.bounds-advanced{border:1px solid var(--line);background:var(--surface);border-radius:4px;min-width:0}.bounds-advanced>summary{cursor:pointer;color:var(--ink);padding:12px;font-size:14px;font-weight:500}.bounds-advanced>summary>span{color:var(--muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.bounds-advanced>p{color:var(--muted);margin:0;padding:0 12px 12px;font-size:12px;line-height:1.7}.bounds-advanced>fieldset{margin:0 12px 12px}.region-panel>.region-tabs{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.region-tab-item>button{white-space:normal;grid-template-rows:auto auto;grid-template-columns:22px minmax(0,1fr);gap:4px 8px;overflow:visible}.region-tab-item>button .region-tab-icon{grid-row:1/3}.region-tab-item>button strong{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.5;overflow:visible}.region-tab-item>button small{white-space:normal;grid-column:2}.region-tab-item>.region-tab-check{flex-shrink:0;min-width:44px}.work-grid>.region-selector{min-width:0;max-width:100%}@media (width<=1180px){.work-grid{grid-template-columns:minmax(0,1fr)}}.effect-analysis-warnings{font-size:12px;line-height:1.65}.effect-analysis-warnings span{background:0 0}.lighting-configurator{justify-self:start;width:min(100%,1100px);overflow:clip}.lighting-configurator.pending,.lighting-configurator.confirmed{border-color:var(--line)}.lighting-configurator>header{background:var(--paper);border-color:var(--line);gap:10px;min-height:66px;padding:14px 18px}.lighting-configurator>header strong{color:var(--ink);font-size:15px}.lighting-configurator>header span{font-size:12px;line-height:1.6}.lighting-config-body{grid-template-columns:minmax(0, 1fr) var(--inspector-width);align-items:stretch;display:grid}.lighting-source{border-right:1px solid var(--line);background:var(--canvas);min-width:0;padding:20px}.lighting-workspace-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:16px;display:flex}.lighting-workspace-toolbar>div{min-width:0}.lighting-workspace-toolbar strong{font-size:20px;font-weight:550;line-height:1.4;display:block}.lighting-workspace-toolbar span,.lighting-workspace-toolbar small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.lighting-workspace-toolbar button{border:1px solid var(--control-line);background:var(--paper);border-radius:4px;align-items:center;gap:7px;min-height:37px;padding:7px 10px;font-size:12px;display:inline-flex}.lighting-source-image{background:var(--surface);border:0;border-radius:3px;width:100%}.lighting-source-image>button{background:var(--surface);justify-content:center;align-items:center;height:auto;display:flex}.lighting-source-image img{aspect-ratio:auto;object-fit:contain;width:100%;max-width:100%;height:auto;min-height:0;max-height:65dvh}.lighting-source-image button>span{min-height:32px;color:var(--overlay-ink);background:var(--overlay);border-radius:3px;padding:6px 9px;font-size:12px}.lighting-preview-tabs{flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.lighting-preview-tabs button{border:1px solid var(--control-line);background:var(--paper);min-width:58px;min-height:37px;color:var(--ink);text-align:center;border-radius:3px;flex:none;padding:7px 11px;font-size:12px;display:block}.lighting-preview-tabs button.active,.lighting-preview-tabs button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.lighting-preview-tabs img{aspect-ratio:3/2;object-fit:contain;background:var(--photo-bg);width:100%;display:block}.lighting-preview-tabs strong{padding:9px 6px 3px;font-size:14px;font-weight:500;display:block}.lighting-preview-tabs small{color:var(--muted);padding:0 6px 8px;font-size:12px;display:block}.lighting-history-link{border:1px solid var(--control-line);min-height:37px;color:var(--ink);background:var(--paper);border-radius:4px;align-items:center;gap:7px;margin-top:16px;padding:7px 10px;font-size:12px;display:inline-flex}.lighting-history-link:hover{background:var(--hover)}.lighting-lock-note{color:var(--muted);background:0 0;gap:7px;margin-top:16px;padding:0}.lighting-lock-note strong,.lighting-lock-note span{color:var(--muted);font-size:12px;font-weight:400;line-height:1.7}.lighting-controls{background:var(--paper);flex-direction:column;gap:0;min-width:0;padding:0;display:flex}.lighting-controls>.lighting-selector-group,.lighting-controls>.lighting-text-field,.lighting-controls>.lighting-secondary-settings{border-bottom:1px solid var(--line);padding:18px 20px}.lighting-optional-devices{border-bottom:1px solid var(--line)}.lighting-optional-devices>summary{min-height:44px;color:var(--muted);cursor:pointer;padding:11px 20px;font-size:12px}.lighting-optional-devices[open]>summary{border-bottom:1px solid var(--line);color:var(--ink)}.lighting-optional-devices>summary:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.lighting-optional-devices>.lighting-secondary-settings{padding:16px 20px}.lighting-controls>.lighting-config-footer{order:2}.lighting-selector-group{gap:10px}.lighting-selector-group>span,.lighting-section-heading strong,.lighting-text-field>span{color:var(--ink);font-size:14px;font-weight:550}.lighting-selector-group>small,.lighting-secondary-settings fieldset>small,.lighting-text-field>small{color:var(--muted);font-size:12px;line-height:1.7}.lighting-tabs{gap:8px}.lighting-tabs button{min-height:38px;color:var(--ink);background:var(--paper);border:1px solid var(--control-line);border-radius:4px;padding:8px 11px;font-size:14px;font-weight:400;line-height:1.4}.lighting-tabs.scenes{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lighting-tabs.scenes button{min-width:0;padding:8px}.lighting-tabs button.active{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.lighting-section-heading{align-items:start;gap:8px;padding:18px 20px 12px}.lighting-section-heading span{font-size:12px;line-height:1.6}.lighting-section-heading>button{flex-shrink:0;min-height:30px;padding:4px 6px;font-size:12px;font-weight:400}.lighting-group-list{flex-direction:column;gap:0;display:flex}.lighting-group-list fieldset{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin:0 0 18px;padding:0 20px 18px}.lighting-group-list fieldset:last-child{margin-bottom:0}.lighting-group-list fieldset.enabled,.lighting-group-list fieldset.disabled{border-color:var(--line);opacity:1;background:0 0}.lighting-group-list legend{width:100%;color:var(--ink);gap:8px;margin-bottom:12px;padding:0}.lighting-group-list legend>svg{display:none}.lighting-group-list legend strong{font-size:14px;font-weight:500;line-height:1.5}.lighting-group-list legend small{white-space:normal;color:var(--muted);font-size:12px;line-height:1.5}.mini-switch{justify-content:flex-end;align-items:center;min-width:44px;min-height:32px;display:flex;position:relative}.mini-switch input[type=checkbox]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.mini-switch>span{border:1px solid var(--control-line);background:var(--track);pointer-events:none;width:35px;height:22px}.mini-switch i{background:var(--thumb);border:1px solid var(--control-line);width:16px;height:16px;box-shadow:none;top:2px;left:2px}.mini-switch input:checked+span{background:var(--accent);border-color:var(--accent)}.mini-switch input:checked+span i{transform:translate(13px)}.mini-switch input:focus-visible+span{outline:2px solid var(--focus);outline-offset:3px}.mini-switch input[type=checkbox]:disabled{cursor:not-allowed}.mini-switch input:disabled+span{background:var(--disabled-bg);border-style:dashed}.lighting-group-parameters{gap:6px;margin:6px 0 0}.lighting-group-parameters label{color:var(--ink);gap:4px;font-size:14px;font-weight:400}.lighting-group-parameters output{font-variant-numeric:tabular-nums;color:var(--ink);font-size:14px;font-weight:400}.lighting-group-parameters label>span{gap:12px}.lighting-group-parameters input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;min-height:28px;margin:0;padding:0;display:block}.lighting-group-parameters input[type=range]::-webkit-slider-runnable-track{background:var(--track);border-radius:4px;height:6px}.lighting-group-parameters input[type=range]::-moz-range-track{background:var(--track);border-radius:4px;height:6px}.lighting-group-parameters input[type=range]::-webkit-slider-thumb{appearance:none;border:2px solid var(--paper);background:var(--accent);width:18px;height:18px;box-shadow:0 0 0 1px var(--accent);border-radius:50%;margin-top:-6px}.lighting-group-parameters input[type=range]::-moz-range-thumb{border:2px solid var(--paper);background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 1px var(--accent);border-radius:50%}.lighting-group-parameters input.brightness-range::-webkit-slider-runnable-track{background:var(--accent)}.lighting-group-parameters input.brightness-range::-moz-range-progress{background:var(--accent);height:6px}.lighting-group-parameters input.temperature-range::-webkit-slider-runnable-track{border:1px solid var(--control-line);background:linear-gradient(90deg,#eaaa48,#f6d89d 28%,#f4f0de 55%,#d8e9ef 77%,#b0d4ef);height:7px}.lighting-group-parameters input.temperature-range::-moz-range-track{border:1px solid var(--control-line);background:linear-gradient(90deg,#eaaa48,#f6d89d 28%,#f4f0de 55%,#d8e9ef 77%,#b0d4ef);height:7px}.lighting-group-parameters input.temperature-range::-webkit-slider-thumb{border:3px solid var(--ink);background:var(--paper);box-shadow:none;margin-top:-6.5px}.lighting-group-parameters input.temperature-range::-moz-range-thumb{border:3px solid var(--ink);background:var(--paper);box-shadow:none}.lighting-group-parameters input[type=range]:disabled{cursor:not-allowed}.lighting-group-parameters input[type=range]:disabled::-webkit-slider-runnable-track{background:var(--disabled-bg);border:1px dashed var(--control-line)}.lighting-group-parameters input[type=range]:disabled::-moz-range-track{background:var(--disabled-bg);border:1px dashed var(--control-line)}.lighting-group-parameters input[type=range]:disabled::-webkit-slider-thumb{background:var(--disabled-ink);border-color:var(--paper);box-shadow:none}.lighting-group-parameters input[type=range]:disabled::-moz-range-thumb{background:var(--disabled-ink);border-color:var(--paper);box-shadow:none}.temperature-scale{color:var(--muted);justify-content:space-between;gap:12px;font-size:12px;line-height:1.5;display:flex}.temperature-control{gap:2px;display:grid}.temperature-heading{color:var(--ink);justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.lighting-group-parameters .temperature-heading select{font-variant-numeric:tabular-nums;width:112px;height:36px;min-height:36px;margin:0;font-size:14px}.lighting-secondary-settings{grid-template-columns:1fr;gap:18px}.lighting-secondary-settings fieldset{background:0 0;border:0;padding:0}.lighting-secondary-settings legend{color:var(--ink);margin-bottom:8px;padding:0;font-size:14px;font-weight:500}.setting-choice-grid,.setting-choice-grid.tv{gap:8px}.setting-choice-grid button{border:1px solid var(--control-line);min-height:37px;color:var(--ink);border-radius:4px;padding:7px 5px;font-size:12px;font-weight:400}.setting-choice-grid button.active{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent);box-shadow:none}.lighting-text-field input,.lighting-text-field textarea{min-height:40px;color:var(--ink);border-color:var(--control-line);padding:10px;font-size:14px;line-height:1.7}.lighting-config-footer{border-top:1px solid var(--line);background:var(--paper);flex-direction:column;gap:14px;margin-top:auto;padding:18px 20px 22px;display:flex}.lighting-config-footer>div:first-child{flex-direction:column;gap:5px;display:flex}.lighting-config-footer strong{font-size:14px;font-weight:500;line-height:1.6}.lighting-config-footer span{color:var(--muted);font-size:12px;line-height:1.7}.lighting-footer-hint-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;display:flex}.lighting-footer-hint-row>span{flex:260px;min-width:0}.lighting-reset-default{border:1px solid var(--line);min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:400;line-height:1.4;display:inline-flex}.lighting-reset-default:hover:not(:disabled){color:var(--ink);border-color:var(--control-line);background:var(--paper)}.lighting-reset-default:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lighting-actions{flex-direction:column;gap:10px;width:100%}.lighting-actions button{border-radius:4px;min-width:0;height:auto;min-height:40px;padding:9px 12px;font-size:14px;font-weight:500;line-height:1.5}.lighting-actions .secondary{border-color:var(--control-line);color:var(--ink);background:var(--paper)}.lighting-actions .primary{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent)}.lighting-actions .primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.work-grid>.color-plan-card{justify-self:start;width:min(100%,400px)}.work-grid.floorplan-simple>.input-card{grid-column:1/-1;width:100%;max-width:none}.work-grid.floorplan-simple>.color-plan-card{width:100%}.work-grid.floorplan-simple>.color-plan-card .result-image{height:auto;max-height:70dvh}.work-grid.floorplan-simple>.color-plan-card .result-image img{width:auto;max-height:70dvh}.quick-color-options{flex-wrap:wrap;align-items:center;gap:12px;padding:0 18px 18px;display:flex}.quick-color-options label{color:var(--ink);white-space:nowrap;font-weight:600}.quick-color-options .select-wrap{width:min(260px,100%)}.quick-color-options select{min-height:42px}.quick-color-options>button{min-height:42px;color:var(--accent);cursor:pointer;background:0 0;border:0;margin-left:auto}.quick-color-options>button:hover{text-decoration:underline}.advanced-entry{border:1px solid var(--line);background:var(--paper);border-radius:8px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.advanced-entry>div{gap:4px;display:grid}.advanced-entry strong{color:var(--ink);font-size:16px}.advanced-entry span{color:var(--muted);line-height:1.5}.advanced-entry-ai-note{border-left:3px solid var(--control-line);max-width:780px;color:var(--muted);background:var(--surface);border-radius:4px;margin:8px 0 0;padding:9px 12px;font-size:13px;line-height:1.7}.advanced-entry-ai-note b{color:var(--ink);white-space:nowrap;margin-right:8px;font-weight:650}.advanced-entry button{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:600;display:inline-flex}.advanced-entry button.next-stage-action{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.advanced-entry button.next-stage-action:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.advanced-entry button.next-stage-action:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.advanced-entry button[aria-expanded=true] svg{transform:rotate(180deg)}.advanced-analysis-start{justify-items:start;gap:16px;padding:20px;display:grid}.advanced-analysis-start p{color:var(--muted);margin:0;line-height:1.6}.advanced-analysis-start button{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--on-accent);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 18px;font-weight:600;display:inline-flex}.advanced-analysis-start button:disabled{opacity:.55;cursor:not-allowed}@media (width<=720px){.quick-color-options{flex-direction:column;align-items:stretch}.quick-color-options .select-wrap{width:100%}.quick-color-options>button{align-self:start;margin-left:0}.advanced-entry{flex-direction:column;align-items:stretch}.advanced-entry button{width:100%}}.color-plan-card .result-asset{background:var(--paper);padding:12px}.color-plan-card .result-image{background:var(--surface);justify-content:center;align-items:center;height:min(260px,40dvh);display:flex}.color-plan-card .result-image img{width:auto;max-width:100%;height:auto;max-height:100%;margin:0}.work-grid.floorplan-simple>.color-version-card{width:100%}.color-version-main{width:min(100%,900px);margin-inline:auto;padding:16px}.color-version-image{border:1px solid var(--line);background:var(--surface);cursor:zoom-in;border-radius:7px;justify-content:center;align-items:center;width:100%;max-height:min(520px,68dvh);padding:0;display:flex;position:relative;overflow:hidden}.color-version-image img{object-fit:contain;width:auto;max-width:100%;max-height:min(520px,66dvh);display:block}.color-version-image>span{color:#fff;background:#1d252c;border-radius:5px;align-items:center;gap:5px;padding:7px 10px;font-size:12px;display:flex;position:absolute;bottom:12px;right:12px}.color-version-meta{justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.color-version-meta>div{gap:3px;min-width:0;display:grid}.color-version-meta strong{color:var(--ink)}.color-version-meta small{color:var(--muted)}.color-version-meta button{border:1px solid var(--line);background:var(--paper);min-height:40px;color:var(--ink);white-space:nowrap;cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:7px 12px;display:inline-flex}.color-version-actions{align-items:center;gap:8px;display:flex}.color-version-meta .color-version-actions .primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.color-version-history{border-top:1px solid var(--line);padding:14px 16px 16px}.color-version-history>div:first-child{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.color-version-history small{color:var(--muted)}.color-version-list{gap:10px;padding:2px 2px 8px;display:flex;overflow-x:auto}.color-version-list button{border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;border-radius:7px;flex:0 0 130px;gap:5px;padding:5px;display:grid;position:relative}.color-version-list button.selected{border:2px solid var(--accent);padding:4px}.color-version-list button:focus-visible,.color-version-meta button:focus-visible,.color-version-image:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.color-version-list img{object-fit:contain;background:var(--surface);width:100%;height:76px}.color-version-list button>span{gap:1px;padding:0 3px 3px;font-size:12px;font-weight:650;display:grid}.color-version-list button>b{background:var(--accent);color:var(--on-accent);border-radius:3px;padding:3px 5px;font-size:10px;position:absolute;top:7px;right:7px}@media (width<=600px){.color-version-meta,.color-version-history>div:first-child{flex-direction:column;align-items:stretch}.color-version-meta button{width:100%}}.result-gallery,.video-gallery{background:var(--canvas);gap:14px;padding:16px}.result-gallery span{white-space:normal;font-size:14px}.gallery-asset>button,.video-asset-meta button{min-height:36px;font-size:12px}.gallery-asset>.gallery-preview{min-height:0}.room-version-gallery{background:var(--canvas);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));align-items:start;gap:16px;padding:16px;display:grid}.room-version-group{border:1px solid var(--line);border-radius:4px;width:100%;min-width:0;margin:0;padding:12px}.room-version-group>header{background:0 0;padding:0 0 10px}.room-version-group>header>div{overflow-wrap:anywhere;min-width:0}.room-version-group>header>span{flex-shrink:0}.room-version-group>header strong{font-size:14px}.room-version-main{padding:0}.room-version-main-image{background:var(--surface);border:0;justify-content:center;align-items:center;height:auto;display:flex}.room-version-main-image>img{background:0 0;width:100%;max-width:100%;height:auto;max-height:60dvh}.room-version-main-meta{flex-direction:column;align-items:stretch;gap:8px;min-height:62px;padding:12px 0 0}.room-version-main-meta strong{color:var(--ink);font-size:14px}.room-version-main-meta span{font-size:12px;line-height:1.6}.room-version-main-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.room-version-history{background:0 0;margin-top:12px;padding:12px 0 0}.room-version-history-title{flex-direction:column;align-items:flex-start;gap:4px}.room-version-history-title strong{font-size:14px}.room-version-history-title>span,.room-version-thumbnails small{font-size:12px}.room-version-thumbnails{grid-auto-columns:112px;gap:8px;padding-bottom:6px}.room-version-thumbnails>li>button{border-color:var(--control-line)}.room-version-thumbnails>li>button.current{border-color:var(--accent);box-shadow:none}.room-version-thumbnails strong{font-size:14px;font-weight:500}.room-version-thumbnails>li>button>span:last-child{flex-direction:column;align-items:start;gap:4px;padding:9px}.room-version-badges b,.room-version-thumb-image b{color:var(--on-accent);background:var(--accent);font-size:12px}.room-version-badges b.latest,.room-version-thumb-image b.latest{color:var(--ink);background:var(--paper);border:1px solid var(--control-line)}.room-version-badges b.history,.room-version-thumb-image b.history{color:var(--overlay-ink);background:var(--overlay)}.preview-hint,.gallery-preview i,.room-version-main-image>i{opacity:1;font-size:12px;transform:none}.preview-hint,.result-image:hover .preview-hint,.result-image:focus-visible .preview-hint{transform:translate(-50%)}.asset-download{min-height:36px;font-size:12px}.effect-file-fields{gap:10px;padding:14px}.effect-file-preview{aspect-ratio:3/2;height:auto}.effect-file-preview img{object-fit:contain}.effect-file-card>footer{flex-wrap:wrap;padding:10px 14px}.effect-file-card>footer button{min-height:36px;font-size:12px}.modal{max-height:calc(100dvh - 40px);color:var(--ink);background:var(--paper);border:1px solid var(--control-line);box-shadow:none;border-radius:6px;padding:24px;overflow:auto}.modal h2{font-size:21px;font-weight:600}.modal p{color:var(--muted);font-size:14px;line-height:1.7}.modal header button{border:1px solid var(--control-line);background:var(--paper);min-width:36px;min-height:36px}.modal header{align-items:start}.modal footer{flex-wrap:wrap}.modal footer button{height:auto;min-height:40px;padding:9px 14px;font-size:14px}.modal footer .save-hint{font-size:12px;line-height:1.7}.settings-tabs{border:1px solid var(--line);background:var(--surface);gap:3px;padding:3px}.settings-tabs button{border:1px solid #0000;height:auto;min-height:40px;padding:8px 6px;font-size:14px}.settings-tabs button.active{color:var(--ink);border-color:var(--control-line);background:var(--paper)}.settings-status{border:1px solid var(--success-line);padding:14px}.settings-status strong,.settings-section-title strong{font-size:14px}.settings-status span{white-space:normal;font-size:12px}.settings-status.video-pending{border-color:var(--warning-line)}.status-dependent-settings{border:0;min-width:0;margin:0;padding:0}.settings-status>button{flex-shrink:0}.provider-cards button{padding:14px}.provider-cards strong{font-size:14px}.provider-cards span{font-size:12px;line-height:1.6}.model-connection-block,.official-model-preset{background:var(--surface);border-color:var(--line);padding:16px}.model-connection-title strong,.official-model-preset strong{font-size:14px}.model-connection-block>label,.model-connection-block .two-fields label,.settings-section>label,.prompt-fields label,.official-model-preset>label{color:var(--ink);font-size:14px;font-weight:500}.model-connection-block label small,.two-fields small,.settings-section>label small{font-size:12px;line-height:1.6}.connection-check{padding:14px}.connection-check strong{font-size:14px}.connection-check span{font-size:12px;line-height:1.7}.connection-check button{height:auto;min-height:38px;font-size:14px}.check-ok,.check-error{font-size:12px;line-height:1.6}.prompt-lock,.system-prompt-lock{color:var(--ink);background:var(--surface);border:1px solid var(--line)}.prompt-lock strong,.system-prompt-lock strong{font-size:14px}.prompt-lock span,.system-prompt-lock span{color:var(--muted);font-size:12px;line-height:1.7}.prompt-fields textarea{font-size:14px}.prompt-variables span{overflow-wrap:anywhere;font-size:12px}.reset-prompts{height:auto;min-height:38px;font-size:14px}.history-item{border-color:var(--control-line);grid-template-columns:80px minmax(0,1fr) auto;gap:14px;padding:12px}.history-thumb{background:var(--photo-bg);border-radius:3px;width:80px;height:60px}.history-thumb img{object-fit:contain}.history-copy strong{font-size:14px}.history-copy span,.history-copy small{font-size:12px;line-height:1.6}.history-empty{gap:10px}.history-empty strong{font-size:14px}.history-empty span{font-size:12px}.feedback{padding:14px 16px;font-size:14px;line-height:1.65}.feedback button{height:auto;min-height:36px;padding:7px 10px;font-size:12px}.feedback.success{color:var(--success);background:var(--success-soft);border-color:var(--success-line)}.feedback.error{color:var(--error);background:var(--error-soft);border-color:var(--error-line)}.feedback button{background:var(--paper)}.batch-summary>div{padding:14px}.batch-summary small,.batch-summary span{font-size:12px}.confirm-note,.video-cost-card span,.video-cost-card small{font-size:12px;line-height:1.7}.confirm-note,.video-cost-card{color:var(--warning);background:var(--warning-soft)}.image-lightbox{-webkit-backdrop-filter:none;backdrop-filter:none}.lightbox-stage>img{box-shadow:none;border-radius:3px}.lightbox-toolbar{color:var(--overlay-ink)}.lightbox-toolbar span{color:var(--overlay-ink);font-size:12px}.lightbox-toolbar button{color:var(--overlay-ink);background:var(--overlay);border-color:var(--overlay-line)}.lightbox-toolbar button:hover{background:var(--overlay);border-color:var(--overlay-ink)}.next-stage-boundary{background:var(--surface)}.next-stage-boundary strong{color:var(--ink);font-size:14px}.next-stage-boundary p{color:var(--muted);font-size:12px;line-height:1.7}.confirm-annotations,.annotation-confirm-step.is-primary,.quality-actions .primary,.region-selector>footer .primary,.room-review-actions>.primary,.card-action button,.test-button,.modal .primary,.room-version-main-actions>button.use-version{color:var(--on-accent);background:var(--accent);border:1px solid var(--accent);box-shadow:none}.confirm-annotations:hover:not(:disabled),.annotation-confirm-step.is-primary:hover:not(:disabled),.quality-actions .primary:hover:not(:disabled),.region-selector>footer .primary:hover:not(:disabled),.room-review-actions>.primary:hover:not(:disabled),.card-action button:hover:not(:disabled),.test-button:hover:not(:disabled),.modal .primary:hover:not(:disabled),.room-version-main-actions>button.use-version:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.annotation-form-heading>button,.effect-object-form-title>button,.effect-file-card>footer button,button.file-action.danger{color:var(--error);border-color:var(--error-line);background:var(--error-soft)}.top-actions button:disabled,.modal button:disabled,.quality-actions button:disabled,.region-selector>footer button:disabled,.room-review-actions>button:disabled,.lighting-actions button:disabled,.card-action button:disabled,.run-button:disabled,.confirm-annotations:disabled,.annotation-confirm-step.is-primary:disabled,.room-version-main-actions>button:disabled{color:var(--disabled-ink);background:var(--disabled-bg);border:1px solid var(--control-line);opacity:1}@media (width>=1600px){:root,html[data-theme]{--inspector-width:clamp(340px, 18vw, 440px)}.lighting-source{padding:24px}}@media (width<=1199px){:root,html[data-theme]{--nav-width:200px}.workflow-sidebar{padding-inline:10px}.workflow-brand{padding-inline:8px}.workflow-brand strong{font-size:20px}.workflow-nav-step{gap:9px;padding-inline:8px}.workflow-nav-step:not(:last-child):before{left:20px}.workspace-main>.topbar,.topbar{padding-inline:20px}.workspace-main main,main{padding:20px}.workspace-project-title>span{display:none}.top-actions{gap:8px}.top-actions .cloud-status{display:none}.lighting-source{padding:18px}.config-grid,.designer-project-config{grid-template-columns:repeat(2,minmax(0,1fr))}.designer-project-config>.field{grid-column:1/-1}.mode-section{grid-template-columns:1fr;grid-template-areas:"mode-heading""mode-cards""review-mode""step-heading""step-grid"}.annotation-workspace,.annotation-footer,.region-selector-body,.effect-analysis-body{grid-template-columns:1fr}.annotation-figure,.region-figure,.effect-analysis-figure{border-right:0;border-bottom:1px solid var(--line)}.annotation-footer .annotation-actions{border-left:0;border-top:1px solid var(--line)}.annotation-room-list,.region-tabs,.effect-object-list{grid-template-columns:repeat(3,minmax(0,1fr))}.quality-gate,.room-review-gate{flex-direction:column;align-items:stretch}.quality-actions,.room-review-actions{justify-content:flex-end}}@media (width<=979px){:root,html[data-theme]{--nav-width:180px}.workflow-brand strong{font-size:19px}.workflow-step-copy strong{font-size:12px}.workflow-nav-step{gap:7px}.workspace-main>.topbar,.topbar{padding-inline:16px}.workspace-project-title{display:none}.top-actions{margin-left:auto}.lighting-config-body{grid-template-columns:1fr}.lighting-source{border-right:0;border-bottom:1px solid var(--line)}.lighting-controls{grid-template-columns:1fr 1fr;align-items:start;display:grid}.lighting-controls>.lighting-section-heading,.lighting-controls>.lighting-group-list,.lighting-controls>.lighting-secondary-settings,.lighting-controls>.lighting-text-field,.lighting-controls>.lighting-config-footer{grid-column:1/-1}.lighting-controls>.lighting-selector-group{align-self:stretch}.lighting-group-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lighting-secondary-settings{grid-template-columns:1fr 1fr}.lighting-config-footer{width:100%}.lighting-config-footer .lighting-actions{flex-direction:row}.lighting-actions button{flex:1}.source-mode-selector,.config-grid,.designer-project-config{grid-template-columns:1fr}.designer-project-config>.field,.source-mode-heading{grid-column:auto}.launch-bar{flex-direction:column;align-items:stretch}.launch-actions{justify-content:flex-start}.effect-angle-tabs,.effect-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.app-shell.with-workflow-sidebar{display:block}.workflow-sidebar{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px;height:auto;padding:18px 16px 12px;display:grid;position:static;overflow:visible}.workflow-brand{margin:0;padding:0}.workflow-brand strong{font-size:20px}.workflow-brand small{display:none}.workflow-project{justify-self:end;width:auto;max-width:210px;min-height:44px;margin:0;padding:8px 10px}.workflow-project strong{font-size:12px}.workflow-project small{display:none}.workflow-nav{flex-direction:row;grid-column:1/-1;gap:6px;padding:2px 1px 6px;overflow-x:auto}.workflow-nav-step{text-align:center;flex-direction:column;flex:0 0 92px;justify-content:center;gap:8px;width:92px;min-height:82px;padding:8px 4px;display:flex}.workflow-nav-step:not(:last-child):before{display:none}.workflow-nav-step.selected:after{width:auto;height:2px;inset:auto 12px 0}.workflow-step-copy{gap:0}.workflow-step-copy strong{font-size:12px}.workflow-step-copy small,.workflow-step-copy>span{display:none}.workflow-sidebar-footer{flex-direction:row;grid-column:1/-1;justify-content:flex-end;gap:20px;margin:0;padding:0}.workflow-sidebar-footer button{min-height:32px;font-size:12px}.workspace-main>.topbar,.topbar{gap:10px;height:auto;min-height:60px;padding:10px 16px;position:sticky;top:0}.top-actions{flex-wrap:wrap;justify-content:flex-end;width:100%;margin:0}.top-actions .icon-button{width:auto;min-width:36px;height:auto;min-height:36px;padding:7px 10px;font-size:12px}.top-actions .theme-switch{margin-right:auto}.top-actions .theme-option{padding-inline:8px;font-size:12px}.workspace-main main,main{padding:20px 16px 32px}.hero{gap:12px;margin-bottom:16px}.hero h1{font-size:24px}.project-settings-panel .project-card{padding:16px}.project-settings-panel>summary{flex-wrap:wrap;gap:6px 12px;padding:12px}.project-settings-panel>summary>span{flex-basis:calc(100% - 28px)}.config-grid,.designer-project-config,.source-mode-selector,.mode-cards,.output-step-grid{grid-template-columns:1fr}.output-step-toggle.required,.custom-prompt-field,.designer-custom-prompt-field{grid-column:auto}.output-step-heading{flex-wrap:wrap}.output-step-heading span{text-align:left}.top-actions .cloud-status,.install-button{display:none}.annotation-intro,.effect-upload-intro,.effect-analysis-summary{flex-wrap:wrap;align-items:start;gap:10px}.annotation-intro>div,.effect-upload-intro>div,.effect-analysis-summary>div{flex-wrap:wrap;align-items:start}.annotation-room-list,.region-tabs,.effect-object-list{grid-template-columns:repeat(2,minmax(0,1fr))}.annotation-workspace,.annotation-footer,.region-selector-body,.effect-analysis-body{grid-template-columns:1fr}.region-selector>header{flex-wrap:wrap}.region-status{margin-left:0}.region-selector>footer .region-actions,.room-review-actions{flex-direction:column}.region-selector>footer button,.room-review-actions>button{width:100%}.effect-analysis-figure,.region-figure,.annotation-figure{padding:12px}.effect-file-grid,.effect-image-fields,.effect-form-two,.effect-file-fields{grid-template-columns:1fr}.effect-angle-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.lighting-configurator>header{grid-template-columns:auto minmax(0,1fr);padding:14px 16px}.lighting-config-status{grid-column:2;justify-self:start}.lighting-source{padding:16px}.lighting-workspace-toolbar strong{font-size:20px}.lighting-preview-tabs{gap:8px}.lighting-preview-tabs button{flex-basis:auto;min-width:58px}.lighting-controls,.lighting-group-list,.lighting-secondary-settings{flex-direction:column;display:flex}.lighting-controls>*{width:100%}.lighting-controls>.lighting-selector-group,.lighting-controls>.lighting-text-field,.lighting-controls>.lighting-secondary-settings{padding:18px}.lighting-section-heading{padding:18px 18px 12px}.lighting-group-list fieldset{padding-inline:18px}.lighting-config-footer{padding:18px}.lighting-reset-default{min-height:44px}.lighting-config-footer .lighting-actions{flex-direction:column}.lighting-actions button{flex:none;width:100%}.lighting-tabs button,.setting-choice-grid button,.lighting-actions button{min-height:44px}.setting-choice-grid.tv{grid-template-columns:repeat(2,minmax(0,1fr))}.temperature-scale{font-size:12px}.room-version-gallery{padding:12px}.room-version-main-meta{align-items:stretch}.room-version-main-actions{justify-content:flex-start}.room-version-history-title{align-items:start}.result-gallery,.video-gallery{grid-template-columns:1fr}.modal-backdrop{padding:12px}.modal{max-height:calc(100dvh - 24px);padding:20px}.modal header{gap:12px}.modal h2{font-size:20px}.settings-tabs button{flex-direction:column;gap:4px;font-size:12px}.settings-section-title{flex-direction:column;align-items:start;gap:5px}.settings-status span{overflow-wrap:anywhere}.provider-cards,.prompt-fields,.two-fields{grid-template-columns:1fr}.connection-check>div:last-child{flex-wrap:wrap}.history-item{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;padding:10px}.history-thumb{width:64px;height:52px}.history-copy strong{white-space:normal;overflow-wrap:anywhere}.feedback{flex-wrap:wrap;align-items:start}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.lighting-text-field input,.lighting-text-field textarea{font-size:16px}}@media (pointer:coarse){button:not(.room-box):not(.region-box):not(.effect-object-box):not(.resize-handle):not(.room-resize-handle):not(.region-resize):not(.camera-marker):not(.camera-target):not(.room-camera-marker),.icon-button,.theme-switch .theme-option,.mini-switch{min-height:44px}.lighting-group-parameters input[type=range]{min-height:36px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width>=980px){.lighting-controls{scrollbar-gutter:auto;max-height:none;position:static;overflow:visible}}@media (width>=1200px){.effect-analysis-panel,.annotation-panel,.region-controls{scrollbar-gutter:stable;max-height:calc(100dvh - 180px);scroll-padding-block:16px;overflow-y:auto}.effect-analysis-panel>*,.annotation-panel>*,.region-controls>*{flex-shrink:0}}.work-grid>.analysis-card.annotation-card,.work-grid>.input-card.compact,.work-grid>.lighting-result-card,.work-grid>.video-result-card{grid-column:1/-1}.input-card.compact{grid-template-columns:minmax(0,1fr);grid-template-areas:"header""image""metadata";display:grid}.input-card.compact>.card-header{grid-area:header}.input-card.compact>.dropzone{border:1px solid var(--line);background:var(--surface);border-radius:7px;grid-area:image;width:min(868px,100% - 32px);height:auto;min-height:0;max-height:min(520px,68dvh);margin:16px auto 0}.input-card.compact>.dropzone img{object-fit:contain;width:auto;max-width:100%;height:auto;min-height:0;max-height:min(520px,66dvh);display:block}.input-card.compact>.file-toolbar{border:0;flex-wrap:wrap;grid-area:metadata;width:min(868px,100% - 32px);margin:12px auto 16px;padding:0}.floorplan-source-preview{cursor:zoom-in;background:0 0;border:0;justify-content:center;align-items:center;width:100%;min-width:0;padding:0;display:flex;position:relative}.floorplan-source-preview>span{color:#fff;background:#1d252c;border-radius:5px;align-items:center;gap:5px;padding:7px 10px;font-size:12px;display:flex;position:absolute;bottom:12px;right:12px}.floorplan-source-preview:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.file-toolbar>div:last-child{flex-shrink:0}.file-action{white-space:nowrap}@media (width<=480px){.input-card.compact>.file-toolbar{gap:8px}}.project-actions{flex:none;align-items:center;gap:8px;display:inline-flex}.project-actions .icon-button{gap:7px;min-height:44px}.project-actions .project-new-current{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}.project-actions .project-new-other svg{color:var(--accent-ink)}.project-actions small{min-width:20px;color:var(--muted);background:var(--surface);border-radius:4px;padding:1px 5px;font-size:11px}.project-history-dot{background:var(--warning);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.model-settings-shortcut{border:1px solid var(--line);width:40px;min-width:40px;height:40px;color:var(--muted);background:var(--paper);border-radius:4px;place-items:center;padding:0;display:grid}.model-settings-shortcut:hover{color:var(--ink);background:var(--hover)}.history-interrupted{border:1px solid var(--line);background:var(--surface);border-radius:4px;align-items:center;gap:10px;margin-bottom:12px;padding:12px;display:flex}.history-interrupted>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.history-interrupted strong{color:var(--ink);font-size:13px}.history-interrupted span{color:var(--muted);font-size:12px;line-height:1.5}.history-interrupted button{border:1px solid var(--control-line);min-height:40px;color:var(--ink);background:var(--paper);white-space:nowrap;border-radius:4px;padding:6px 10px;font-size:12px}.history-interrupted .history-interrupted-dismiss{color:var(--muted);background:0 0;border-color:#0000}@media (width<=720px){.workspace-main>.topbar{flex-wrap:wrap}.top-actions{gap:8px}.project-actions{width:100%}.project-actions .icon-button{flex:1;justify-content:center;min-width:0}.model-settings-shortcut{width:36px;min-width:36px;height:36px}.history-interrupted{flex-wrap:wrap}.history-interrupted>div{flex-basis:100%}}@media (width<=480px){.project-actions{grid-template-columns:.85fr 1fr 1.25fr;display:grid}.project-actions .icon-button{white-space:normal;min-height:48px;padding-inline:6px;font-size:11px;line-height:1.3}.project-actions .icon-button svg{flex:none;width:16px;height:16px}}.input-card.compact>.color-style-picker,.input-card.compact>.quick-color-options,.input-card.compact>.color-style-custom-editor,.input-card.compact>.floorplan-launch-bar{grid-column:1/-1}.color-style-custom-editor{border:1px solid var(--accent);background:var(--paper);border-radius:8px;margin:-4px 18px 18px;padding:16px}.color-style-custom-editor>p{color:var(--muted);margin:0 0 14px;font-size:13px}.color-style-custom-editor .generation-prompt-field textarea{min-height:110px;font-size:14px}@media (width>=721px){.room-version-group:only-child .room-version-main{grid-template-columns:minmax(0,2fr) minmax(200px,1fr);align-items:start;gap:20px;display:grid}.room-version-group:only-child .room-version-main-meta{padding-top:0}}@media (width<=720px){.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-sidebar{grid-template-columns:auto minmax(0,1fr);gap:6px 12px;padding:8px 16px}.workflow-home-link{margin:0;padding:4px 0}.workflow-brand{display:none}.workflow-project{min-width:0;max-width:100%}.workflow-project strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workflow-nav{margin:0;padding-bottom:2px}.workflow-nav-step{flex-direction:row;flex-basis:116px;gap:6px;width:116px;min-height:48px;padding:6px}.workflow-step-marker{flex-shrink:0}.workflow-step-copy strong{white-space:nowrap}.workspace-main main{padding-top:12px}.project-settings-panel>summary{flex-wrap:nowrap}.project-settings-panel>summary>span{flex-basis:auto;min-width:0}.lighting-source-image img{max-height:none}}.work-grid>.input-card:not(.compact)>.dropzone{gap:8px;width:min(640px,100% - 28px);height:220px;min-height:220px;padding:12px}@media (width<=480px){.work-grid>.input-card:not(.compact)>.dropzone{height:180px;min-height:180px}}.lighting-image-picker{top:var(--workspace-topbar-height,60px);z-index:4;border-bottom:1px solid var(--line);background:var(--paper);padding:12px 18px;position:sticky}.lighting-image-picker-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.lighting-image-picker-heading strong{font-size:14px}.lighting-image-picker-heading span{color:var(--muted);font-size:12px}.lighting-image-strip{gap:8px;padding:3px;scroll-padding-inline:3px;display:flex;overflow-x:auto}.lighting-image-strip>button{text-align:left;border:1px solid var(--control-line);background:var(--paper);border-radius:4px;flex:0 0 176px;align-items:center;gap:8px;min-width:0;min-height:64px;padding:6px;display:flex}.lighting-image-strip>button.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.lighting-image-strip img{object-fit:contain;background:var(--photo-bg);border-radius:2px;flex-shrink:0;width:58px;height:48px}.lighting-image-strip>button>span{gap:3px;min-width:0;display:grid}.lighting-image-strip strong{overflow-wrap:anywhere;font-size:12px;line-height:1.4}.lighting-image-strip small{color:var(--muted);font-size:12px}.lighting-image-strip>button.active small{color:var(--accent-ink)}.lighting-controls>.lighting-device-editor{grid-column:1/-1}.lighting-device-editor{border-bottom:1px solid var(--line);width:100%;min-width:0;padding:0 16px 16px;container-type:inline-size}.lighting-device-no-groups{color:var(--muted);margin:0;padding:14px 0;font-size:13px;line-height:1.6}.lighting-device-search{align-items:center;gap:6px;margin-bottom:10px;display:flex}.lighting-device-search>label{flex:1;min-width:0;position:relative}.lighting-device-search>label>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.lighting-device-search input[type=search]{width:100%;padding-left:32px;font-size:13px}.lighting-device-search>button{background:var(--paper);border:1px solid var(--control-line);border-radius:4px;flex-shrink:0;place-items:center;width:32px;min-height:36px;padding:5px;display:grid}.lighting-device-search>span{color:var(--muted);flex-shrink:0;font-size:12px}.lighting-device-workspace{display:block}.lighting-device-list{scroll-snap-type:x proximity;gap:6px;min-width:0;max-height:none;margin-bottom:10px;padding:2px 0 4px;display:flex;overflow-x:auto}.lighting-device-list>button{border:1px solid var(--control-line);background:var(--paper);text-align:left;scroll-snap-align:start;border-radius:4px;flex:0 0 152px;align-items:center;gap:8px;min-height:52px;padding:7px;display:flex}.lighting-device-list>button:hover{background:var(--hover)}.lighting-device-list>button.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.lighting-device-list>button>span{flex:1;gap:3px;min-width:0;display:grid}.lighting-device-list strong{color:var(--ink);overflow-wrap:anywhere;font-size:13px;line-height:1.4}.lighting-device-list small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.lighting-device-list b{color:var(--muted);flex-shrink:0;font-size:11px;font-weight:500}.lighting-device-list .active b{color:var(--accent-ink)}.lighting-device-detail{border:1px solid var(--line);background:var(--surface);border-radius:4px;min-width:0;padding:10px 12px}.lighting-device-detail fieldset{border:0;min-width:0;margin:0;padding:0}.lighting-device-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lighting-device-header{justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.lighting-device-title{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.lighting-device-title strong{font-size:14px}.lighting-device-title span{color:var(--muted);font-size:12px}.lighting-device-power{color:var(--muted);flex:none;align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.lighting-device-empty{color:var(--muted);gap:8px;padding:12px;font-size:12px;display:grid}.lighting-device-empty button{border:1px solid var(--control-line);min-height:36px;color:var(--ink);background:var(--paper);border-radius:4px}.lighting-device-detail>p{color:var(--muted);font-size:12px}@media (width>=1200px){.lighting-configurator .lighting-config-body{grid-template-columns:minmax(0,1fr) minmax(490px,1fr)}.lighting-configurator .lighting-preview-panel{top:calc(var(--workspace-topbar-height,60px) + 76px);position:sticky}.lighting-configurator .lighting-source-image img{max-height:48dvh}}@media (width<=1199px){.lighting-configurator .lighting-config-body{grid-template-columns:1fr}.lighting-configurator .lighting-source{border-right:0;border-bottom:1px solid var(--line)}.lighting-configurator .lighting-controls{flex-direction:column;align-items:stretch;max-height:none;display:flex;position:static;overflow:visible}}@media (width<=560px){.lighting-image-picker{padding:10px}.lighting-image-picker-heading{align-items:start}.lighting-image-picker-heading span{max-width:65%}.lighting-device-editor{padding-inline:10px}.lighting-group-parameters .temperature-heading select{height:44px;min-height:44px;font-size:16px}}.lighting-device-batch{border:1px solid var(--line);min-height:44px;color:var(--ink);border-radius:4px;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:8px;padding:4px 8px;font-size:12px;display:flex}.lighting-device-batch>strong{white-space:nowrap;font-weight:550}.lighting-device-batch>span{color:var(--muted);white-space:nowrap;margin-left:auto}.lighting-device-batch-actions{flex-wrap:nowrap;gap:6px;display:flex}.lighting-device-batch button{border:1px solid var(--control-line);background:var(--paper);min-width:52px;min-height:34px;color:var(--ink);border-radius:4px;padding:5px 10px;font-size:12px}.lighting-device-batch button:not(:disabled):hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.lighting-device-batch button:disabled{opacity:.45;cursor:not-allowed}@media (width<=560px){.lighting-device-batch button{min-height:44px}}.lighting-configurator .lighting-image-picker{align-items:center;gap:10px;padding:6px 16px;display:flex}.lighting-configurator .lighting-image-picker-heading{flex:none;margin:0}.lighting-configurator .lighting-image-picker-heading strong{font-size:12px}.lighting-configurator .lighting-image-picker-heading>span{display:none}.lighting-configurator .lighting-image-strip{flex:1;gap:6px;min-width:0}.lighting-configurator .lighting-image-strip>button{flex-basis:160px;gap:6px;min-height:46px;padding:4px 6px}.lighting-configurator .lighting-image-strip img{width:38px;height:32px}.lighting-configurator .lighting-image-strip>button>span{gap:0}.lighting-configurator .lighting-image-strip strong{font-size:12px;line-height:1.3}.lighting-configurator .lighting-image-strip small{display:none}@media (width<=560px){.lighting-configurator .lighting-image-picker{gap:6px;padding-inline:8px}.lighting-configurator .lighting-image-picker-heading{display:none}}.curtain-opening-control{gap:10px;margin-top:12px;display:grid}.curtain-opening-control input[type=number]{width:100%}.curtain-opening-control small,.tv-image-upload>small{color:var(--muted);font-size:12px;line-height:1.6;display:block}.tv-image-upload{gap:10px;min-width:0;margin-top:12px;display:grid}.tv-image-upload figure{min-width:0;margin:0}.tv-image-upload figure img{object-fit:contain;background:var(--surface);border:1px solid var(--line);border-radius:4px;width:100%;height:120px;display:block}.tv-image-upload figcaption{color:var(--success);overflow-wrap:anywhere;align-items:center;gap:6px;margin-top:7px;font-size:12px;display:flex}.tv-image-native-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tv-image-upload>button{border:1px solid var(--control-line);background:var(--paper);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:42px;padding:0 12px;display:inline-flex}.tv-image-upload>button:disabled{cursor:not-allowed;opacity:.5}.tv-image-upload>button.tv-image-picker{border-color:var(--primary);color:var(--primary);font-weight:700}.tv-image-upload>button.tv-image-remove{color:var(--muted)}.tv-image-selected-name{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:12px}.tv-image-upload>p{margin:0;font-size:12px;line-height:1.5}.tv-image-upload>p.tv-image-status{color:var(--success)}.tv-image-upload>p.tv-image-error{color:var(--error)}.lighting-secondary-settings>fieldset{min-width:0}.panorama-entry-workspace{grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);align-items:start;gap:22px;display:grid;position:relative}.panorama-intake-card,.panorama-route-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px}.panorama-intake-card>header{align-items:flex-start;gap:14px;display:flex}.panorama-intake-card>header>span{background:var(--surface);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.panorama-intake-card header p,.panorama-route-card>p{color:var(--accent-ink);letter-spacing:1px;margin:0 0 7px;font-size:12px}.panorama-intake-card h2{margin:0 0 6px;font-size:25px}.panorama-intake-card header small{color:var(--muted)}.panorama-source-tabs{grid-template-columns:1fr 1fr;gap:10px;margin:26px 0 18px;display:grid}.panorama-source-tabs button{border:1px solid var(--control-line);background:var(--paper);min-height:46px;color:var(--ink);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:8px;display:flex}.panorama-source-tabs button.selected{border-color:var(--accent);background:var(--selected);color:var(--accent-ink)}.panorama-url-field{gap:9px;display:grid}.panorama-url-field>span{font-weight:650}.panorama-url-field input{border:1px solid var(--control-line);background:var(--paper);min-height:48px;color:var(--ink);font:inherit;border-radius:8px;padding:0 14px}.panorama-url-field small,.panorama-file-field span{color:var(--muted);line-height:1.6}.panorama-file-field{text-align:center;border:1px dashed var(--control-line);background:var(--surface);cursor:pointer;border-radius:10px;place-items:center;gap:9px;min-height:170px;display:grid}.panorama-file-field input{opacity:0;width:1px;height:1px;position:absolute}.panorama-boundary-note{background:var(--surface);color:var(--muted);border-radius:10px;gap:11px;margin:22px 0;padding:15px;display:flex}.panorama-boundary-note svg{color:var(--accent);flex:none}.panorama-boundary-note strong,.panorama-boundary-note span{display:block}.panorama-boundary-note strong{color:var(--ink);margin-bottom:5px}.panorama-boundary-note span{font-size:13px;line-height:1.6}.panorama-notice{border-radius:8px;padding:11px 13px;font-size:13px}.panorama-notice.success{background:var(--success-soft);color:var(--success)}.panorama-notice.error{background:var(--danger-soft);color:var(--danger)}.panorama-save{border:1px solid var(--ink);background:var(--ink);width:100%;min-height:50px;color:var(--paper);cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;padding:0 16px;font-weight:650;display:flex}.panorama-save:disabled{cursor:not-allowed;opacity:.5}.panorama-route-card ol{gap:18px;margin:22px 0 0;padding:0;list-style:none;display:grid}.panorama-route-card li{color:var(--muted);gap:12px;display:flex}.panorama-route-card li b{border:1px solid var(--control-line);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:12px;display:grid}.panorama-route-card li span strong,.panorama-route-card li span small{display:block}.panorama-route-card li span strong{color:var(--ink);margin-bottom:4px}.panorama-route-card li.active b{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.panorama-review{gap:18px;margin-top:24px;display:grid}.panorama-source-summary{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:minmax(180px,36%) 1fr;align-items:center;gap:16px;padding:14px;display:grid}.panorama-source-summary.panorama-equirectangular-review{grid-template-columns:1fr}.panorama-equirectangular-review>button{border-radius:12px}.panorama-equirectangular-review>div{padding:2px 4px 4px}.panorama-source-summary>button{cursor:zoom-in;background:#1d1d1d;border:0;border-radius:8px;padding:0;display:block;overflow:hidden}.panorama-source-summary img{aspect-ratio:2;object-fit:cover;width:100%;display:block}.panorama-source-summary>div{gap:5px;min-width:0;display:grid}.panorama-source-summary strong{font-size:17px}.panorama-source-summary small{color:var(--muted);overflow-wrap:anywhere}.panorama-status{background:var(--success-soft);width:max-content;color:var(--success);border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:650;display:flex}.panorama-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.panorama-frame-grid figure{border:1px solid var(--line);background:var(--paper);border-radius:11px;margin:0;overflow:hidden}.panorama-frame-grid img{aspect-ratio:16/9;object-fit:cover;background:#222;width:100%;display:block}.panorama-frame-grid figcaption{justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.panorama-frame-grid figcaption span{color:var(--muted);font-size:11px}.panorama-review-note{background:var(--selected);color:var(--accent-ink);border-radius:10px;gap:10px;padding:14px;display:flex}.panorama-review-note svg{flex:none}.panorama-review-note strong,.panorama-review-note span{display:block}.panorama-review-note span{color:var(--muted);margin-top:4px;font-size:12px}.panorama-review-actions{justify-content:flex-end;gap:10px;display:flex}.panorama-review-actions button{min-height:45px;font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:650;display:flex}.panorama-review-actions .secondary{border:1px solid var(--control-line);background:var(--paper);color:var(--ink)}.panorama-review-actions .primary{border:1px solid var(--ink);background:var(--ink);color:var(--paper)}.panorama-review-actions button:disabled{cursor:not-allowed;opacity:.55}.panorama-quota{border-top:1px solid var(--line);color:var(--muted);gap:7px;margin-top:24px;padding-top:18px;font-size:12px;display:grid}.panorama-quota strong{color:var(--ink)}.panorama-busy-overlay{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1e1b1759;place-items:center;display:grid;position:fixed;inset:0}.panorama-busy-overlay>div{background:var(--paper);text-align:center;border:1px solid #ffffff73;border-radius:22px;place-items:center;gap:10px;width:min(380px,100vw - 40px);padding:30px;display:grid;box-shadow:0 24px 70px #211b143d}.panorama-busy-overlay strong{font-size:18px}.panorama-busy-overlay span{color:var(--muted);font-size:13px}.spin{animation:.9s linear infinite panorama-spin}@keyframes panorama-spin{to{transform:rotate(360deg)}}.panorama-scene-picker{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:12px;margin-top:18px;padding:16px;display:grid}.panorama-scene-picker>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.panorama-scene-picker>div:first-child span{color:var(--muted);font-size:12px}.panorama-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.panorama-scene-grid button{border:1px solid var(--control-line);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:96px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:8px;display:grid;position:relative}.panorama-scene-grid button.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:var(--selected)}.panorama-scene-grid img{aspect-ratio:2;object-fit:cover;background:#222;border-radius:6px;width:96px;display:block}.panorama-scene-grid span strong,.panorama-scene-grid span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.panorama-scene-grid span small{color:var(--muted);margin-top:5px;font-size:11px}.panorama-scene-grid svg{color:var(--accent)}.panorama-scene-grid button:disabled{cursor:not-allowed;opacity:.62;filter:grayscale(.22)}@media (width<=900px){.panorama-entry-workspace,.panorama-source-tabs{grid-template-columns:1fr}}@media (width<=700px){.panorama-source-summary,.panorama-frame-grid,.panorama-scene-grid{grid-template-columns:1fr}.panorama-review-actions{grid-template-columns:1fr 1fr;display:grid}}.panorama-entry-workspace{grid-template-columns:minmax(0,1fr);gap:14px}.panorama-intake-card{padding:22px}.panorama-route-card{padding:13px 18px}.panorama-route-card>p{display:none}.panorama-route-card ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.panorama-url-field input{border:2px solid var(--accent);min-height:58px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 9%,transparent);font-size:16px}.panorama-save{z-index:4;border-color:var(--accent);background:var(--accent);min-height:58px;color:var(--on-accent);justify-content:center;gap:12px;font-size:16px;font-weight:750;position:sticky;bottom:14px;box-shadow:0 12px 30px #0000002e}.panorama-review{gap:14px;margin-top:18px}.panorama-review-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;display:grid}.panorama-source-summary img{max-height:42vh}.panorama-scene-picker{margin-top:14px;padding:14px}.panorama-scene-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}.panorama-scene-grid button{grid-template-columns:72px minmax(0,1fr) 20px;padding:7px}.panorama-scene-grid img{width:72px}@media (width<=900px){.panorama-route-card ol{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.panorama-review-grid,.panorama-route-card ol{grid-template-columns:1fr}}.panorama-url-field{border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-left:4px solid var(--accent);background:color-mix(in srgb,var(--accent) 4%,var(--paper));border-radius:12px;gap:10px;padding:16px;transition:border-color .16s,box-shadow .16s,background-color .16s}.panorama-url-field>span{color:var(--ink);font-size:15px;font-weight:750}.panorama-url-field input{border:2px solid color-mix(in srgb,var(--accent) 72%,var(--control-line));background:var(--paper);min-height:60px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 9%,transparent);font-size:16px}.panorama-url-field:focus-within{border-color:var(--accent);background:var(--paper);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 12%,transparent)}.panorama-url-field input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:2px}.panorama-room-name-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.panorama-room-name-row>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.panorama-room-name-row>button,.panorama-room-rename button{border:1px solid var(--control-line);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;padding:0 14px;font-weight:650}.panorama-room-name-row>button{color:var(--accent-ink);flex:none}.panorama-room-rename{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px;display:grid}.panorama-room-rename label{min-width:0}.panorama-room-rename input{border:2px solid var(--accent);background:var(--paper);width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:8px;padding:0 12px;font-weight:650}.panorama-room-rename input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 26%,transparent);outline-offset:2px}.panorama-room-rename input[aria-invalid=true]{border-color:var(--danger)}.panorama-room-rename>div{gap:8px;display:flex}.panorama-room-rename button.primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.panorama-room-rename button:disabled{cursor:not-allowed;opacity:.6}.panorama-room-rename .panorama-rename-error{min-height:18px;color:var(--danger);grid-column:1/-1;font-size:12px}@media (width<=700px){.panorama-room-rename{grid-template-columns:1fr}.panorama-room-rename>div{grid-template-columns:1fr 1fr;display:grid}.panorama-room-rename .panorama-rename-error{grid-column:1}}.panorama-scene-bulk{justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.panorama-scene-bulk label{border:1px solid var(--control-line);background:var(--paper);min-height:44px;color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 11px;font-weight:650;display:flex}.panorama-scene-picker>div:first-child .panorama-scene-bulk label span{color:var(--ink);white-space:nowrap;font-size:13px}.panorama-scene-bulk input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;margin:0}.panorama-scene-bulk label:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent);outline-offset:2px}.panorama-scene-bulk input:disabled{cursor:not-allowed;opacity:.58}.panorama-scene-bulk label:has(input:disabled){cursor:not-allowed;opacity:.58}.panorama-scene-bulk>span{white-space:nowrap}@media (width<=700px){.panorama-scene-picker>div:first-child{flex-direction:column;align-items:stretch}.panorama-scene-bulk{flex-wrap:wrap;justify-content:space-between}.panorama-scene-bulk label{flex:auto}.panorama-scene-bulk>span{flex:none}}html.has-task-dock{scroll-padding-bottom:calc(var(--task-dock-height,100px) + 32px + env(safe-area-inset-bottom))}html.has-task-dock .workspace-main>main{padding-bottom:calc(var(--task-dock-height,100px) + 48px + env(safe-area-inset-bottom))}.task-dock{z-index:30;left:calc(var(--nav-width,0px) + 24px);right:24px;bottom:calc(16px + env(safe-area-inset-bottom));pointer-events:none;justify-content:center;display:flex;position:fixed}.task-dock[aria-hidden=true]{visibility:hidden}.task-progress{width:min(1120px,100%);min-width:0;max-height:calc(100dvh - var(--topbar-height,60px) - 40px - env(safe-area-inset-bottom));border:1px solid var(--control-line);border-left:3px solid var(--accent);background:var(--paper);color:var(--ink);pointer-events:auto;border-radius:5px;flex-direction:column;margin:0;padding:0;display:flex;box-shadow:0 6px 24px #0000001f}.task-dock-bar{flex:none;justify-content:space-between;align-items:center;gap:12px 24px;min-width:0;min-height:76px;padding:12px 16px;display:flex}.task-dock-summary{align-items:center;gap:14px 24px;min-width:0;display:flex}.task-progress-heading{align-items:center;gap:10px;min-width:0;display:flex}.task-progress-heading>div{flex-direction:column;gap:3px;min-width:0;display:flex}.task-progress-heading strong{overflow-wrap:anywhere;font-size:14px;font-weight:550;line-height:1.5}.task-progress-heading span{color:var(--muted);font-size:12px;line-height:1.5}.task-progress-heading>svg{color:var(--accent);flex:none}.task-elapsed{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted);flex-shrink:0;align-items:center;gap:6px;font-size:12px;line-height:1.5;display:inline-flex}.task-dock-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.task-dock-actions button{border:1px solid var(--line);background:var(--paper);min-width:44px;min-height:44px;color:var(--ink);font:inherit;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:13px;line-height:1.5;display:inline-flex}.task-dock-actions .task-jump{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.task-dock-actions .task-dismiss{color:var(--muted);padding:9px}.task-dock-actions button:hover{background:var(--hover)}.task-details-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.task-progress-details{overscroll-behavior:contain;border-bottom:1px solid var(--line);background:var(--surface);min-height:0;max-height:50dvh;padding:18px 20px;overflow-y:auto}.task-progress-details[hidden]{display:none}.task-progress-detail{overflow-wrap:anywhere;margin:0 0 16px;font-size:14px;line-height:1.6}.task-request-steps{flex-wrap:wrap;gap:12px 28px;margin:0;padding:0;list-style:none;display:flex}.task-request-steps li{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.task-request-steps li>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.task-request-steps .current,.task-request-steps .done{color:var(--accent)}.task-request-steps .current>span,.task-request-steps .done>span{border-color:currentColor}.task-request-steps small{font-size:12px}.task-wait-note,.task-stop-note{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.6}.task-workflow{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px 24px;margin-top:16px;padding-top:14px;display:flex}.task-workflow>span{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px;font-size:12px;display:flex}.task-workflow b{font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.task-workflow small{flex-basis:100%;padding-left:22px;font-size:12px}.task-workflow .current{color:var(--accent);font-weight:600}.task-progress.failed{border-left-color:var(--error)}.task-progress.failed .task-progress-heading>svg,.task-request-steps .failed,.task-workflow .failed{color:var(--error)}.task-quota-error{border:1px solid var(--error-line);background:var(--error-soft);color:var(--ink);border-radius:4px;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;display:flex}.task-quota-error>svg{color:var(--error);flex:none;margin-top:1px}.task-quota-error strong{color:var(--error);margin-bottom:3px;font-size:14px;line-height:1.5;display:block}.task-quota-error p{margin:0;font-size:13px;line-height:1.6}.task-progress.complete{border-left-color:var(--success)}.task-progress.complete .task-progress-heading>svg{color:var(--success)}.analysis-running{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:260px;padding:24px;display:flex}.analysis-running svg{color:var(--accent)}.analysis-running strong{font-size:15px}.analysis-running span{max-width:420px;color:var(--muted);font-size:13px;line-height:1.7}@media (width<=1000px){.task-dock-summary{flex-direction:column;align-items:flex-start;gap:4px}.task-elapsed{padding-left:28px}}@media (width<=720px){.task-dock{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:calc(8px + env(safe-area-inset-bottom))}.task-dock-bar{flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px}.task-dock-summary{display:block;position:relative}.task-elapsed{padding-left:0;position:absolute;bottom:0;right:0}.task-progress-heading span{min-height:18px;padding-right:126px}.task-progress-heading strong{font-size:13px}.task-dock-actions{justify-content:flex-end}.task-dock-actions .task-jump{margin-right:auto}.task-progress-details{padding:16px}.task-request-steps{flex-direction:column;gap:10px}.task-workflow{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}}@media (prefers-reduced-motion:reduce){.task-progress .spin,.analysis-running .spin{animation:none}}.task-dock-actions .task-retry{color:var(--on-accent);border-color:var(--accent);background:var(--accent);white-space:normal;text-align:center}.task-dock-actions .task-retry:hover:not(:disabled){background:var(--accent-hover)}.task-dock-actions .task-quota-action{color:var(--on-accent);border-color:var(--error);background:var(--error)}.task-dock-actions .task-quota-action:hover:not(:disabled){filter:brightness(.92);background:var(--error)}.task-dock-actions button:disabled{cursor:not-allowed;opacity:.6}.task-dock-actions button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.task-dock-actions{flex-wrap:wrap;max-width:100%}.task-error-raw{color:var(--muted);margin-bottom:16px;font-size:13px}.task-error-raw summary{cursor:pointer;padding:8px 0}.task-error-raw pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.workflow-nav-step.partial .workflow-step-marker,.workflow-nav-step.failed .workflow-step-marker{color:var(--error);border-color:var(--error-line);background:var(--error-soft)}@media (width<=1200px){.task-dock-bar{flex-wrap:wrap}.task-dock-actions{margin-left:auto}}@media (width<=720px){.task-dock-actions{width:100%}.task-dock-actions .task-retry{flex:1 0 100%}.task-dock-actions .task-jump{margin-right:auto}}.task-dock-actions .task-stop{color:var(--error);border-color:var(--error-line);background:var(--error-soft);white-space:normal}.task-dock-actions .task-stop:hover:not(:disabled){background:var(--hover)}@media (width<=720px){.task-dock-actions .task-stop{flex:1 0 100%}}.panorama-lighting-studio{--pls-ink:#25231f;--pls-muted:#766f65;--pls-paper:#f6f1e8;--pls-line:#d8d0c1;--pls-green:#226854;--pls-gold:#d9b568;z-index:120;color:var(--pls-ink);background:#171512;grid-template-columns:minmax(0,56%) minmax(560px,44%);display:grid;position:fixed;inset:0;overflow:hidden}.pls-viewer-pane{background:#171512;min-width:0;height:100vh;position:relative;overflow:hidden}.panorama-sphere-viewer{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;position:absolute;inset:0}.panorama-sphere-viewer.is-dragging{cursor:grabbing}.panorama-sphere-viewer canvas,.panorama-sphere-viewer>img{object-fit:cover;width:100%;height:100%;display:block}.panorama-viewer-help{color:#ffffffa3;pointer-events:none;font-size:13px;position:absolute;top:140px;left:46px}.pls-room-title{z-index:2;color:#fff;text-shadow:0 1px 12px #0000005c;position:absolute;top:34px;left:46px}.pls-room-title button{color:#ffffffc2;cursor:pointer;background:0 0;border:0;padding:0}.pls-room-title small{color:var(--pls-gold);margin-left:12px;display:inline-block}.pls-room-title h1{letter-spacing:-.02em;margin:14px 0 8px;font-size:clamp(25px,2vw,34px)}.pls-room-title span{color:#ffffffb3;font-size:14px}.pls-stepper{z-index:125;color:#ddd;background:#1e1d1bf5;border:1px solid #ffffff17;border-radius:18px;grid-template-columns:repeat(4,1fr);width:min(760px,58vw);display:grid;position:fixed;top:30px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 18px 50px #0000004d}.pls-stepper span{grid-template-rows:auto auto;grid-template-columns:34px 1fr;gap:0 10px;min-width:0;padding:16px 17px;font-size:13px;font-weight:700;display:grid}.pls-stepper span b{border:1px solid #a8a39c;border-radius:50%;grid-row:1/3;align-self:center;place-items:center;width:30px;height:30px;font-size:13px;display:grid}.pls-stepper span small{color:#918d86;font-size:11px;font-weight:500}.pls-stepper span.active{color:#29251f;background:var(--pls-gold)}.pls-stepper span.active b{border-color:#4e4023}.pls-stepper span.active small{color:#705b32}.pls-stepper span.complete{color:#e8e1d4}.pls-stepper span.complete b{border-color:var(--pls-gold);color:var(--pls-gold)}.pls-scene-dock{z-index:3;background:#181715e8;border:1px solid #ffffff1f;border-radius:19px;max-width:calc(100% - 56px);padding:8px;display:flex;position:absolute;bottom:30px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 15px 45px #00000047}.pls-scene-dock button{color:#dad7d0;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:13px;flex:none;align-items:center;gap:10px;min-width:132px;padding:12px 14px;display:flex}.pls-scene-dock button.active{color:#2c271d;background:var(--pls-gold)}.pls-scene-dock b{font-size:22px;font-weight:500}.pls-scene-dock span{gap:2px;font-weight:700;display:grid}.pls-scene-dock small{opacity:.65;font-size:11px;font-weight:500}.pls-drawer{z-index:121;background:var(--pls-paper);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100vh;display:grid;position:relative;box-shadow:-20px 0 50px #00000029}.pls-drawer>header{border-bottom:1px solid var(--pls-line);justify-content:space-between;align-items:center;min-height:76px;padding:14px 22px 12px;display:flex}.pls-drawer>header small{color:#a37b2d;font-weight:700}.pls-drawer>header h2{margin:4px 0 0;font-size:24px}.pls-close{color:#28251f;cursor:pointer;background:#fffdf8;border:1px solid #cfc6b7;border-radius:50%;place-items:center;width:46px;height:46px;font-size:28px;display:grid}.pls-drawer-scroll{scrollbar-width:thin;min-height:0;padding:14px 22px 18px;overflow-y:auto}.pls-room-switch{background:#ffffff6b;border:1px solid #ddd6ca;border-radius:12px;gap:9px;margin-bottom:10px;padding:11px;display:grid}.pls-room-switch-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pls-room-switch-heading>div{align-items:baseline;gap:8px;display:flex}.pls-room-switch-heading strong{font-size:14px}.pls-room-switch-heading small{color:var(--pls-muted);font-size:12px;font-weight:500}.pls-room-rename-trigger{min-height:28px;color:var(--pls-green);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:12px;text-decoration:underline}.pls-room-rename-trigger:disabled{cursor:not-allowed;opacity:.45}.pls-room-quick-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.pls-room-quick-list>button,.pls-room-more{color:#39433f;background:#fff;border:1px solid #c8cec9;border-radius:9px;min-width:0;min-height:44px;transition:border-color .16s,background .16s,color .16s}.pls-room-quick-list>button{text-overflow:ellipsis;white-space:nowrap;cursor:pointer;padding:7px 10px;overflow:hidden}.pls-room-quick-list>button:hover{background:#f4f8f5;border-color:#82a295}.pls-room-quick-list>button.active{border-color:var(--pls-green);color:#174f40;box-shadow:inset 0 0 0 1px var(--pls-green);background:#e7f0eb;font-weight:750}.pls-room-more{grid-column:span 2;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 8px 0 12px;display:grid;position:relative}.pls-room-more span{white-space:nowrap;font-size:12px;font-weight:700}.pls-room-more select{width:100%;min-width:0;min-height:34px;color:inherit;background:0 0;border:0;padding:0 8px}.pls-room-name-form{border:1px solid var(--pls-line);background:#ffffff75;border-radius:9px;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;padding:9px;display:grid}.pls-room-name-form input{box-sizing:border-box;border:1px solid #8ba79a;border-radius:8px;width:100%;min-height:38px;padding:0 10px}.pls-room-name-form button{color:#34433d;cursor:pointer;background:#fff;border:1px solid #b9c5bd;border-radius:8px;min-height:38px;padding:0 12px}.pls-room-name-form button.primary{border-color:var(--pls-green);color:#fff;background:var(--pls-green)}.pls-room-name-form>p{color:#a63c34;grid-column:1/-1;margin:0;font-size:12px}.pls-scene-toolbar{background:#f6f4ef;border:1px solid #d9d5cc;border-radius:12px;gap:10px;padding:11px;display:grid}.pls-scene-toolbar-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.pls-scene-toolbar-heading>div:first-child{align-items:baseline;gap:8px;display:flex}.pls-scene-toolbar-heading strong{font-size:14px}.pls-scene-toolbar-heading small{color:var(--pls-muted);font-size:12px}.pls-scene-tabs{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:7px;display:grid}.pls-scene-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.pls-scene-toolbar button,.pls-inline-editor button,.pls-manage-list button{color:#34433d;cursor:pointer;background:#fff;border:1px solid #c2cbc5;border-radius:9px;min-height:42px;padding:0 14px}.pls-scene-tabs button.active{border-color:var(--pls-green);color:var(--pls-green);box-shadow:inset 0 0 0 1px var(--pls-green);background:#eaf1ec}.pls-scene-actions button{white-space:nowrap;color:#52605a;background:#ffffffb8;align-items:center;gap:6px;min-height:36px;padding:0 11px;display:inline-flex}.pls-scene-actions button:hover{color:#245c4c;background:#fff;border-color:#82a295}.pls-scene-actions .pls-scene-select-all[aria-pressed=true]{color:#1f5b49;background:#e4eee9;border-color:#79a08f}.pls-inline-editor{gap:8px;margin:14px 0;display:flex}.pls-inline-editor input{border:1px solid var(--pls-line);border-radius:9px;flex:1;min-width:0;padding:12px}.pls-manage-list{border:1px solid var(--pls-line);background:#fff6;border-radius:12px;margin:14px 0}.pls-manage-list>div{border-bottom:1px solid var(--pls-line);grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:9px 11px;display:grid}.pls-manage-list>div:last-child{border-bottom:0}.pls-manage-list button{min-height:34px;padding:0 12px}.pls-prompt{gap:7px;margin:16px 0 18px;display:grid}.pls-prompt>span{justify-content:space-between;align-items:center;font-weight:750;display:flex}.pls-prompt b{color:#87671f;background:#f2dfa8;border-radius:999px;padding:5px 10px;font-size:11px}.pls-prompt textarea{resize:vertical;width:100%;font:inherit;box-sizing:border-box;background:#fff;border:1px solid #aabcb3;border-radius:10px;padding:11px 12px;line-height:1.5}.pls-prompt small,.pls-light-section>p,.pls-device-section>p{color:var(--pls-muted);line-height:1.5}.pls-light-section h3,.pls-device-section h3{margin:0 0 4px;font-size:22px}.pls-light-grid{gap:13px;margin-top:15px;display:grid}.pls-light-card{border:1px solid var(--pls-line);background:#ffffff7a;border-radius:14px;padding:19px}.pls-light-card.enabled{border-color:var(--pls-green);box-shadow:inset 0 0 0 1px var(--pls-green)}.pls-light-card-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.pls-light-card-head>div{gap:5px;display:grid}.pls-light-card-head strong{font-size:17px}.pls-light-card-head small{color:var(--pls-muted)}.pls-switch{cursor:pointer;align-items:center;gap:8px;display:flex}.pls-switch input{opacity:0;pointer-events:none;position:absolute}.pls-switch span{background:#aaa;border-radius:999px;width:42px;height:24px;transition:all .18s;position:relative}.pls-switch span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .18s;position:absolute;top:3px;left:3px}.pls-switch input:checked+span{background:var(--pls-green)}.pls-switch input:checked+span:after{transform:translate(18px)}.pls-switch em{min-width:42px;color:var(--pls-muted);font-size:12px;font-style:normal}.pls-control-row{grid-template-columns:1fr 1fr;gap:28px;margin-top:18px;display:grid}.pls-control-row label{gap:9px;display:grid}.pls-control-row label>span{justify-content:space-between;align-items:center;font-weight:700;display:flex}.pls-control-row output{color:#4e4a43}.pls-control-row input[type=range],.pls-device-card input[type=range]{width:100%;accent-color:var(--pls-green);cursor:pointer}.pls-device-section{border-top:1px solid var(--pls-line);margin-top:28px;padding-top:26px}.pls-device-card{border:1px solid var(--pls-line);background:#ffffff73;border-radius:14px;gap:13px;margin-top:14px;padding:17px;display:grid}.pls-device-card>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pls-device-card button{color:#514b42;cursor:pointer;background:#fff;border:1px solid #cec5b5;border-radius:8px;min-height:40px;padding:6px 8px}.pls-device-card button.active{color:#573e10;background:#f1dda7;border-color:#a6771f}.pls-tv-prompt{gap:7px;display:grid}.pls-tv-prompt>span{font-size:13px;font-weight:700}.pls-tv-prompt input{box-sizing:border-box;background:#fff;border:1px solid #aabcb3;border-radius:8px;width:100%;min-height:42px;padding:0 11px}.pls-tv-prompt small{color:var(--pls-muted);line-height:1.5}.pls-drawer>footer{border-top:1px solid var(--pls-line);background:#fffdf8f7;gap:8px;padding:11px 22px 13px;display:grid;box-shadow:0 -12px 30px #342d2312}.pls-footer-status{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px 14px;display:grid}.pls-footer-status>div{text-align:right;justify-items:end;gap:2px;min-width:0;display:grid}.pls-batch-help{line-height:1.35}.pls-drawer>footer small{color:var(--pls-muted)}.pls-footer-actions{grid-template-columns:.8fr 1.15fr 1.2fr;gap:10px;display:grid}.pls-footer-actions.has-batch{grid-template-columns:.72fr 1.08fr 1.12fr 1.05fr}.pls-drawer>footer button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:48px;font-weight:750;display:inline-flex}.pls-drawer>footer button.secondary{color:#35483f;background:#fff;border:1px solid #b8c3bc}.pls-drawer>footer button.primary{border:1px solid var(--pls-green);color:#fff;background:var(--pls-green)}.pls-drawer>footer button.batch{color:#1f5b4a;background:#e6f0eb;border:1px solid #31715f}.pls-drawer>footer button.publisher{color:#fff;background:#24221e;border:1px solid #24221e}.pls-drawer>footer button:disabled{cursor:not-allowed;opacity:.45}.pls-generating{z-index:130;color:#fff;text-align:left;background:#1e1c19f5;border:1px solid #ffffff26;border-radius:20px;gap:14px;width:min(410px,52vw - 44px);min-width:340px;padding:24px 26px;display:grid;position:fixed;top:50%;left:28%;transform:translate(-50%,-50%);box-shadow:0 24px 80px #0006}.pls-generation-title{align-items:center;gap:12px;display:flex}.pls-generation-title>div{gap:3px;display:grid}.pls-generating strong{font-size:18px}.pls-generating span,.pls-generating small{color:#c7c2b9;font-size:12px}.pls-generation-count,.pls-generation-time{justify-content:space-between;align-items:center;gap:16px;display:flex}.pls-generation-count b{font-size:15px}.pls-generation-track{background:#ffffff29;border-radius:999px;height:8px;overflow:hidden}.pls-generation-track i{border-radius:inherit;background:linear-gradient(90deg,#d9b75f,#f0d98d);height:100%;transition:width .24s;display:block}.pls-generating>small{border-top:1px solid #ffffff1f;padding-top:10px;line-height:1.45}.pls-publisher-overlay{z-index:145;background:#f6f1e8;grid-template-rows:54px minmax(0,1fr);display:grid;position:fixed;inset:0}.pls-publisher-overlay>header{color:#f3eee4;background:#24221e;border-bottom:1px solid #d8d0c1;justify-content:space-between;align-items:center;gap:18px;padding:6px 18px;display:flex}.pls-publisher-overlay>header>div{grid-template-columns:auto auto;align-items:baseline;gap:2px 12px;display:grid}.pls-publisher-overlay>header small{color:var(--pls-gold);font-weight:700}.pls-publisher-overlay>header strong{font-size:16px}.pls-publisher-overlay>header span{display:none}.pls-publisher-overlay>header button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:9px;min-height:36px;padding:0 14px}.pls-publisher-overlay iframe{background:#f7f7f5;border:0;width:100%;height:100%}@media (width<=1180px){.panorama-lighting-studio{grid-template-columns:minmax(0,48%) minmax(520px,52%)}.pls-stepper{width:min(500px,48vw - 32px);left:24%}.pls-stepper span{padding:13px 11px}.pls-scene-actions{width:100%}.pls-scene-toolbar{flex-wrap:wrap}.pls-footer-actions.has-batch{grid-template-columns:1fr 1fr}.pls-generating{left:24%}}@media (width<=860px){.panorama-lighting-studio{background:var(--pls-paper);display:block;overflow-y:auto}.pls-viewer-pane{height:44vh;min-height:340px}.pls-drawer{height:auto;min-height:56vh;overflow:visible}.pls-drawer-scroll{overflow:visible}.pls-stepper{width:calc(100% - 28px);position:absolute;top:16px}.pls-stepper span{grid-template-columns:24px 1fr;padding:10px 7px;font-size:10px}.pls-stepper span b{width:22px;height:22px;font-size:10px}.pls-stepper small{display:none}.pls-room-title{top:82px;left:22px}.panorama-viewer-help{top:178px;left:22px}.pls-scene-dock{max-width:calc(100% - 28px);bottom:14px}.pls-control-row{grid-template-columns:1fr;gap:15px}.pls-device-card>div{grid-template-columns:repeat(2,minmax(0,1fr))}.pls-footer-actions{grid-template-columns:1fr}.pls-room-quick-list{grid-template-columns:repeat(2,minmax(0,1fr))}.pls-room-name-form{grid-template-columns:1fr 1fr}.pls-room-name-form label{grid-column:1/-1}.pls-generating{width:calc(100% - 44px);min-width:0;top:22vh;left:50%}}.pls-room-title{top:78px;left:30px}.panorama-viewer-help{top:198px;left:30px}.pls-room-title .pls-save-view{color:#fff;background:#14141273;border:1px solid #ffffff6b;border-radius:8px;margin-top:12px;padding:7px 10px;font-weight:650;display:block}.pls-stepper{width:min(520px,56vw - 48px);top:14px;left:28%}.pls-stepper span{grid-template-columns:25px 1fr;gap:0 7px;padding:9px 10px;font-size:11px}.pls-stepper span b{width:23px;height:23px;font-size:11px}.pls-scene-tabs>span{background:#fffdf9;border:1px solid #b9c5bd;border-radius:9px;display:flex;overflow:hidden}.pls-scene-tabs>span.active{border-color:var(--pls-green);box-shadow:inset 0 0 0 1px var(--pls-green)}.pls-scene-tabs>span button{border:0;border-radius:0;min-height:40px}.pls-scene-open{flex:1;min-width:0}.pls-scene-tabs>span.active .pls-scene-open{color:var(--pls-green);background:#eaf1ec}.pls-scene-check{width:38px;font-weight:800;border-left:1px solid #d6ddd8!important;padding:0!important}.pls-scene-check[aria-pressed=true]{color:#fff;background:var(--pls-green)}.pls-section-heading{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.pls-section-heading p{color:var(--pls-muted);margin:4px 0 0}.pls-section-heading>div:last-child{gap:7px;display:flex}.pls-section-heading button{color:#34433d;cursor:pointer;background:#fff;border:1px solid #b9c5bd;border-radius:8px;min-height:34px;padding:0 11px}.pls-light-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:12px}.pls-light-card{padding:13px}.pls-control-row{gap:15px;margin-top:12px}.pls-device-section{margin-top:20px;padding-top:18px}@media (width<=1180px) and (width>=861px){.pls-stepper{width:min(500px,48vw - 32px);left:24%}}@media (width<=860px){.pls-stepper{width:calc(100% - 28px);left:50%}.pls-room-title{top:82px;left:22px}.panorama-viewer-help{top:190px;left:22px}.pls-scene-toolbar-heading{flex-direction:column;align-items:stretch;gap:8px}.pls-scene-toolbar-heading>div:first-child{justify-content:space-between}.pls-scene-actions{justify-content:flex-start;width:auto}.pls-footer-actions.has-batch,.pls-footer-status{grid-template-columns:1fr}.pls-footer-status>div{text-align:left;justify-items:start}}.album-lightbox .lightbox-stage{height:calc(100dvh - 56px)}.album-lightbox .lightbox-toolbar{flex:none;grid-template-columns:minmax(0,1fr) auto 44px}.album-lightbox .lightbox-toolbar>button{width:44px;height:44px}.album-count{font-variant-numeric:tabular-nums;white-space:nowrap}.album-image-area{touch-action:pan-y pinch-zoom;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}.album-image-area>img{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%;display:block}.album-image-area>img[hidden]{display:none}.album-arrow{border:1px solid var(--overlay-line);width:48px;height:56px;color:var(--overlay-ink);background:var(--overlay);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.album-previous{left:8px}.album-next{right:8px}.album-arrow:hover{border-color:var(--overlay-ink)}.album-lightbox button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.album-help{color:var(--overlay-ink);text-align:center;flex:none;margin:12px 0 0;font-size:12px;line-height:1.6}.album-image-error{color:var(--overlay-ink);text-align:center;padding:0 64px}.album-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.album-lightbox{padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom))}.album-lightbox .lightbox-stage{height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:100%}.album-lightbox .lightbox-toolbar{gap:8px}.album-lightbox .lightbox-toolbar strong{font-size:13px}.album-arrow{width:44px;height:48px}.album-previous{left:0}.album-next{right:0}}@media (prefers-reduced-motion:reduce){.album-lightbox{animation:none}}.registration-calibration{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--paper);border-radius:4px;grid-column:1/-1;margin:0}.registration-calibration>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:14px 16px;list-style:none;display:flex}.registration-calibration>summary::-webkit-details-marker{display:none}.registration-calibration>summary>span{flex-wrap:wrap;align-items:center;gap:9px;min-width:0;display:flex}.registration-calibration>summary strong{font-size:14px;font-weight:550;line-height:1.5}.registration-calibration>summary>svg{color:var(--muted);transition:transform .15s}.registration-calibration[open]>summary>svg{transform:rotate(180deg)}.registration-calibration[open]>summary{border-bottom:1px solid var(--line)}.registration-status{color:var(--warning);background:var(--warning-soft);border-radius:3px;flex-shrink:0;padding:3px 7px;font-size:12px;font-weight:400;line-height:1.5}.registration-status.confirmed{color:var(--success);background:var(--success-soft)}.registration-calibration-content{padding:16px}.registration-explanation{color:var(--ink);margin:0;font-size:14px;line-height:1.75}.registration-explanation strong{font-weight:550}.registration-suggestion{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.7}.registration-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;min-width:0;margin-top:18px;display:grid}.registration-image-panel{min-width:0}.registration-image-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.registration-image-heading strong{font-size:14px;font-weight:550}.registration-image-heading>span{color:var(--muted);font-size:12px}.registration-image-frame{border:1px solid var(--line);background:var(--photo-bg);border-radius:3px;min-width:0;padding:0}.registration-image-canvas{border:0;width:100%;margin:0;padding:0;line-height:0;position:relative}.registration-image-canvas[data-ready=false]{min-height:180px}.registration-image-canvas>img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border:0;width:100%;max-width:none;height:auto;max-height:none;margin:0;padding:0;display:block}.registration-image-placeholder{text-align:center;color:var(--muted);background:var(--surface);place-items:center;padding:20px;font-size:12px;line-height:1.7;display:grid;position:absolute;inset:0}.registration-bounds{z-index:1;border:2px solid var(--accent);background:var(--selection-fill);box-shadow:0 0 0 1px var(--overlay), inset 0 0 0 1px var(--overlay-ink);margin:0;padding:0;position:absolute}.registration-calibration .registration-bounds-move{width:100%;min-width:0;height:100%;color:var(--ink);cursor:move;touch-action:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;position:absolute;inset:0}.registration-bounds-move>span{border:1px solid var(--control-line);white-space:nowrap;max-width:calc(100% - 10px);color:var(--ink);background:var(--paper);pointer-events:none;border-radius:3px;align-items:center;gap:5px;padding:4px 6px;font-size:12px;line-height:1.4;display:inline-flex;position:absolute;top:5px;left:5px;overflow:hidden}.registration-calibration .registration-bounds-resize{width:36px;min-width:0;height:36px;min-height:36px;color:var(--accent-ink);cursor:nwse-resize;touch-action:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;position:absolute;bottom:-1px;right:-1px}.registration-bounds-resize:after{content:"";border:2px solid var(--paper);background:var(--accent);outline:1px solid var(--overlay);pointer-events:none;width:12px;height:12px;position:absolute;bottom:1px;right:1px}.registration-calibration .registration-bounds-move:disabled,.registration-calibration .registration-bounds-resize:disabled{color:var(--ink);cursor:not-allowed;background:0 0}.registration-calibration button:focus-visible,.registration-calibration input:focus-visible,.registration-calibration summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px;box-shadow:none}.registration-calibration .registration-bounds-move:focus-visible{outline-offset:-4px}.registration-calibration .registration-bounds-resize:focus-visible{outline-offset:-3px}.registration-image-hint{color:var(--muted);margin:9px 0 12px;font-size:12px;line-height:1.65}.registration-fields{border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;display:grid}.registration-fields legend{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.registration-fields label{min-width:0;color:var(--muted);flex-direction:column;gap:5px;font-size:12px;line-height:1.5;display:flex}.registration-calibration .registration-fields input{border:1px solid var(--control-line);width:100%;min-width:0;height:38px;min-height:38px;color:var(--ink);background:var(--paper);font-variant-numeric:tabular-nums;border-radius:4px;padding:7px 6px;font-size:14px}.registration-calibration .registration-fields input[aria-invalid=true]{border-color:var(--error)}.registration-calibration .registration-fields input:disabled{color:var(--disabled-ink);background:var(--disabled-bg);cursor:not-allowed}.registration-field-error{color:var(--error);margin:9px 0 0;font-size:12px;line-height:1.65}.registration-warnings{border:1px solid var(--warning-line);color:var(--warning);background:var(--warning-soft);overflow-wrap:anywhere;border-radius:4px;margin:16px 0 0;padding:12px 14px 12px 30px;font-size:12px;line-height:1.75}.registration-calibration-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding-top:16px;display:flex}.registration-calibration-footer>p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.registration-calibration-footer>button{border:1px solid var(--accent);min-height:40px;color:var(--on-accent);background:var(--accent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;padding:9px 13px;font-size:14px;line-height:1.5;display:inline-flex}.registration-calibration-footer>button:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover)}.registration-calibration-footer>button:disabled{border-color:var(--control-line);color:var(--disabled-ink);background:var(--disabled-bg);cursor:not-allowed}@media (width<=920px){.registration-image-grid{grid-template-columns:1fr;gap:22px}}@media (width<=599px){.registration-calibration>summary{align-items:flex-start;padding:12px}.registration-calibration>summary>span{gap:8px}.registration-calibration>summary>svg{margin-top:3px}.registration-calibration-content{padding:12px}.registration-image-grid{margin-top:16px}.registration-fields{gap:6px}.registration-calibration .registration-fields input{height:44px;min-height:44px;padding:6px 4px;font-size:16px}.registration-calibration-footer{flex-direction:column;align-items:stretch;gap:12px}.registration-calibration-footer>button{width:100%;min-height:44px}}@media (pointer:coarse){.registration-calibration .registration-bounds-resize{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.registration-calibration *,.registration-calibration :before,.registration-calibration :after{transition:none;animation:none}}.generation-prompt-controls{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.generation-prompt-controls>label{flex:none;margin:0}.generation-prompt-controls>select{flex:170px;width:auto;min-width:0;max-width:260px;min-height:40px}.generation-prompt-controls>button{white-space:normal;min-height:40px}.generation-prompt-favorites{border:1px solid var(--line,#d9e1eb);background:var(--surface,#fff);border-radius:8px;margin-top:14px}.generation-prompt-favorites>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-weight:600;display:flex}.generation-prompt-favorites>summary::marker{color:var(--muted,#667085)}.generation-prompt-favorites>summary small{color:var(--muted,#667085);margin-left:auto;font-weight:400}.generation-prompt-favorites-body{padding:0 14px 14px}.generation-prompt-favorite-save{border-top:1px solid var(--line,#e5eaf0);margin-top:12px;padding-top:12px}.generation-prompt-favorite-save>label{align-items:baseline;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.generation-prompt-favorite-save>label small{color:var(--muted,#667085);font-weight:400}.generation-prompt-favorite-save>div{gap:8px;display:flex}.generation-prompt-favorite-save input{flex:1;min-width:0}.generation-prompt-favorite-save button{flex:none}.generation-prompt-favorite-list{margin:0;padding:0;list-style:none}.generation-prompt-favorite-list li{border-bottom:1px solid var(--line,#e5eaf0);align-items:center;gap:8px;padding:10px 0;display:flex}.generation-prompt-favorite-list li>div{flex:1;min-width:0}.generation-prompt-favorite-list strong,.generation-prompt-favorite-list small{display:block}.generation-prompt-favorite-list small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted,#667085);overflow:hidden}.generation-prompt-favorite-remove{color:#a33;cursor:pointer;background:0 0;border:0}.generation-prompt-favorite-empty,.generation-prompt-favorite-note{color:var(--muted,#667085)}.generation-prompt-favorite-message{color:#216b48;margin:8px 0 0}@media (width<=540px){.generation-prompt-controls>select{max-width:none}.generation-prompt-controls>button{flex:100%}.generation-prompt-favorite-save>div{flex-direction:column}}.lighting-scene-picker,.lighting-scene-picker *{box-sizing:border-box}.lighting-editing-note{color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:12px 20px;font-size:12px;line-height:1.7}.lighting-editing-note strong{color:var(--ink)}@media (width<=979px){.lighting-controls>.lighting-editing-note,.lighting-controls>.lighting-scene-picker{grid-column:1/-1}.lighting-config-footer .lighting-actions{flex-wrap:wrap}}.lighting-scene-picker{border-bottom:1px solid var(--line);min-width:0;color:var(--ink);background:var(--paper);padding:10px 16px;font-size:14px;line-height:1.5}.lighting-scene-picker-sticky{top:calc(var(--workspace-topbar-height,60px) + 60px);z-index:6;padding-block:8px;position:sticky;box-shadow:0 4px 10px #00000014}.lighting-controls>.lighting-scene-picker-tools{border-top:1px solid var(--line);order:1;padding:0}.lighting-scene-picker-tools>summary{min-height:40px;color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.lighting-scene-picker-tools>summary span{font-size:11px}.lighting-scene-picker-tools[open]>summary{border-bottom:1px solid var(--line);color:var(--ink)}.scene-picker-tools-content{padding:10px 16px 14px}.lighting-scene-picker .scene-picker-navigation{min-width:0;margin-top:7px;display:block}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0;max-height:none;margin-top:0;display:grid;overflow:visible}.lighting-scene-picker .scene-picker-current{border-left:3px solid var(--accent);color:var(--ink);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:2px 6px;margin-top:0;padding:4px 8px;font-size:12px;display:flex}.lighting-scene-picker .scene-picker-current strong{color:var(--accent-ink);font-size:13px}.lighting-scene-picker .scene-picker-current span{color:var(--muted)}.lighting-scene-picker .scene-picker-current small{color:var(--muted);margin-left:auto;font-size:11px}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-row{min-width:0}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-edit{min-height:43px;padding-block:4px}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-name{white-space:normal;overflow-wrap:anywhere;font-size:12px}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-state{gap:0 6px;font-size:10px}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-state>span{white-space:nowrap}.lighting-scene-picker .scene-picker-add-trigger{border:1px dashed var(--accent);background:var(--accent-soft);width:auto;min-height:44px;color:var(--accent-ink);white-space:nowrap;justify-self:start;padding:6px 10px;font-size:12px;font-weight:600}.lighting-scene-picker .scene-picker-add-trigger span{margin-right:4px;font-size:16px}.lighting-scene-picker-sticky .scene-picker-add{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.lighting-scene-picker-sticky .scene-picker-add-row{grid-template-columns:minmax(0,1fr) auto auto}.lighting-scene-picker .scene-picker-add-cancel{background:var(--paper);color:var(--muted)}@media (width<=1199px){.lighting-scene-picker-sticky{top:calc(var(--workspace-topbar-height,60px) + 60px)}}@media (width<=699px){.lighting-scene-picker-sticky{box-shadow:none;position:static}.lighting-scene-picker.lighting-scene-picker-sticky .scene-picker-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.lighting-scene-picker-sticky{top:calc(var(--workspace-topbar-height,60px) + 52px);padding-inline:10px}.lighting-scene-picker-tools>summary,.scene-picker-tools-content{padding-inline:10px}.lighting-scene-picker-sticky .scene-picker-add-row{grid-template-columns:minmax(0,1fr) auto}.lighting-scene-picker-sticky .scene-picker-add-cancel{grid-column:1/-1}}.lighting-scene-picker .scene-picker-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.lighting-scene-picker .scene-picker-heading strong{font-size:14px;font-weight:550}.lighting-scene-picker .scene-picker-count,.lighting-scene-picker .scene-picker-toolbar>span{color:var(--muted);font-size:12px}.lighting-scene-picker .scene-picker-hint,.lighting-scene-picker .scene-picker-empty{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:12px;line-height:1.6}.lighting-scene-picker .scene-picker-toolbar{justify-content:space-between;align-items:center;gap:8px;margin:4px 0 8px;display:flex}.lighting-scene-picker .scene-picker-toolbar>div{gap:8px;display:flex}.lighting-scene-picker button{font:inherit;color:var(--ink);cursor:pointer;border-radius:4px}.lighting-scene-picker .scene-picker-toolbar button{background:0 0;border:1px solid #0000;min-width:44px;min-height:44px;padding:6px;font-size:12px}.lighting-scene-picker .scene-picker-list{gap:8px;min-width:0;display:grid}.lighting-scene-picker .scene-picker-row{border:1px solid var(--control-line);background:var(--paper);border-radius:4px;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:4px;min-width:0;display:grid}.lighting-scene-picker .scene-picker-row[data-editing=true]{border-color:var(--accent);background:var(--accent-soft)}.lighting-scene-picker .scene-picker-checkbox{cursor:pointer;justify-content:center;align-items:center;width:44px;min-height:44px;margin:0;padding:0;display:flex}.lighting-scene-picker .scene-picker-checkbox input{appearance:auto;width:18px;min-width:18px;height:18px;accent-color:var(--accent);cursor:pointer;margin:0;padding:0}.lighting-scene-picker .scene-picker-edit{text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1px 6px;min-width:0;min-height:48px;padding:5px 8px 5px 0;display:grid}.lighting-scene-picker .scene-picker-name{overflow-wrap:anywhere;min-width:0;font-size:14px}.lighting-scene-picker .scene-picker-editing{color:var(--accent-ink);white-space:nowrap;font-size:12px}.lighting-scene-picker .scene-picker-state{color:var(--muted);flex-wrap:wrap;grid-column:1/-1;gap:2px 12px;font-size:12px;line-height:1.5;display:flex}.lighting-scene-picker .scene-picker-state>span{white-space:nowrap}.lighting-scene-picker [data-tone=success]{color:var(--success)}.lighting-scene-picker [data-tone=pending]{color:var(--warning)}.lighting-scene-picker [data-tone=running]{color:var(--accent-ink)}.lighting-scene-picker [data-tone=error]{color:var(--error)}.lighting-scene-picker .scene-picker-add{margin-top:8px}.lighting-scene-picker .scene-picker-add>label{color:var(--ink);margin-bottom:6px;font-size:12px;display:block}.lighting-scene-picker .scene-picker-add-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.lighting-scene-picker .scene-picker-add-row input{border:1px solid var(--control-line);width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--paper);font:inherit;border-radius:4px;padding:8px 10px}.lighting-scene-picker .scene-picker-add-row input::placeholder{color:var(--muted);opacity:1}.lighting-scene-picker .scene-picker-add-row button,.lighting-scene-picker .scene-picker-sync>button{border:1px solid var(--control-line);background:var(--paper);min-height:44px;padding:8px 12px;font-size:12px;line-height:1.6}.lighting-scene-picker .scene-picker-add-row button{min-width:52px}.lighting-scene-picker .scene-picker-sync{margin-top:8px}.lighting-scene-picker .scene-picker-sync>button{white-space:normal;overflow-wrap:anywhere;width:100%}.lighting-scene-picker .scene-picker-error,.lighting-scene-picker .scene-picker-feedback{overflow-wrap:anywhere;margin:6px 0 0;font-size:12px;line-height:1.6}.lighting-scene-picker .scene-picker-error{color:var(--error)}.lighting-scene-picker .scene-picker-feedback{color:var(--success)}.lighting-scene-picker input[aria-invalid=true]{border-color:var(--error)}.lighting-scene-picker button:hover:not(:disabled){background:var(--hover)}.lighting-scene-picker button:focus-visible,.lighting-scene-picker input:focus-visible,.lighting-scene-picker-tools>summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.lighting-scene-picker .scene-picker-edit:focus-visible{outline-offset:-2px}.lighting-scene-picker button:disabled,.lighting-scene-picker input:disabled{color:var(--disabled-ink);background-color:var(--disabled-bg);cursor:not-allowed;opacity:1}.lighting-scene-picker .scene-picker-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lighting-scene-picker .scene-picker-list{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:6px}.lighting-scene-picker .scene-picker-row{grid-template-columns:32px minmax(0,1fr);column-gap:0}.lighting-scene-picker .scene-picker-checkbox{width:32px;min-height:44px}.lighting-scene-picker .scene-picker-name{font-size:13px}.lighting-scene-picker .scene-picker-editing{font-size:11px}.lighting-scene-picker .scene-picker-state{gap:2px 6px;font-size:11px}.lighting-scene-picker .scene-picker-toolbar{margin:2px 0 6px}.lighting-scene-picker .scene-picker-toolbar button{min-height:30px;padding:3px 6px}.lighting-scene-picker .scene-picker-add-row input,.lighting-scene-picker .scene-picker-add-row button,.lighting-scene-picker .scene-picker-sync>button{min-height:34px;padding:5px 8px}.lighting-scene-picker .scene-picker-hint{margin-top:4px;line-height:1.4}.lighting-scene-picker .scene-name-manager{border:1px solid var(--line);border-radius:4px;min-width:0;margin:8px 0;padding:8px}.lighting-scene-picker .scene-name-manager legend{font-size:12px}.lighting-scene-picker .scene-name-manager label{grid-template-columns:70px minmax(0,1fr);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;display:grid}.lighting-scene-picker .scene-name-manager input,.lighting-scene-picker .scene-name-manager select{width:100%;min-width:0;min-height:34px;padding:5px 8px;font-size:13px}.lighting-scene-picker .scene-name-manager>div{flex-wrap:wrap;gap:6px;display:flex}.lighting-scene-picker .scene-name-manager button{background:var(--paper);border:1px solid var(--control-line);min-height:34px;padding:5px 8px;font-size:12px}.color-style-picker{border:0;min-width:0;margin:0;padding:0 18px 18px}.color-style-picker legend{width:100%;color:var(--ink);padding:0 0 10px;font-weight:700}.color-style-picker legend small{color:var(--muted);margin-left:10px;font-size:12px;font-weight:400}.color-style-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.color-style-option{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;align-items:stretch;padding:6px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.color-style-option:hover{border-color:var(--accent);transform:translateY(-2px)}.color-style-option:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.color-style-option.selected{border:2px solid var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent);padding:5px}.color-style-option:disabled{cursor:default}.color-style-art{aspect-ratio:176/108;background:#eee;border-radius:4px;display:block;overflow:hidden}.color-style-art svg{width:100%;height:100%;display:block}.color-style-info{justify-content:space-between;align-items:center;gap:3px;margin:7px 3px 1px;font-size:13px;display:flex}.color-style-info svg{color:var(--accent);flex:none}.color-style-option>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0 3px 5px;font-size:11px;display:block;overflow:hidden}.color-style-custom-option{border-style:dashed}.color-style-custom-option.expanded{border-style:solid;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.color-style-custom-art{background:color-mix(in srgb,var(--accent) 7%,var(--paper));color:var(--accent-ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.color-style-custom-art svg{width:28px;height:28px}@media (width<=900px){.color-style-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.color-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.color-style-picker legend small{margin:4px 0 0;display:block}}@media (width>=901px){.color-style-grid{grid-template-columns:repeat(auto-fill,minmax(132px,144px))}.color-style-art{max-height:80px}}.color-style-reference{border:1px solid var(--line);background:var(--paper);border-radius:8px;grid-column:1/-1;min-width:0;margin:-4px 18px 18px;padding:16px}.color-style-reference-heading,.color-style-reference-inputs,.color-style-reference-review{align-items:flex-start;gap:16px;display:flex}.color-style-reference-heading{justify-content:space-between;margin-bottom:14px}.color-style-reference-heading>div,.color-style-reference-details{gap:5px;min-width:0;display:grid}.color-style-reference-heading strong{font-size:14px}.color-style-reference-heading small,.color-style-reference-details small,.color-style-reference-hint{color:var(--muted);font-size:12px;line-height:1.5}.color-style-reference-remove{min-height:36px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;display:flex}.color-style-reference-inputs{flex-wrap:wrap;align-items:center}.color-style-reference-upload,.color-style-reference-existing button,.color-style-reference-analyze,.color-style-reference-confirm{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--on-accent);font:inherit;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:650;display:inline-flex}.color-style-reference-upload{position:relative;overflow:hidden}.color-style-reference-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.color-style-reference-existing{gap:5px;min-width:0;display:grid}.color-style-reference-existing label{color:var(--muted);font-size:12px}.color-style-reference-existing>div{gap:8px;display:flex}.color-style-reference-existing select{border:1px solid var(--line);background:var(--paper);min-width:130px;min-height:44px;color:var(--ink);border-radius:6px;padding:6px 9px}.color-style-reference-existing button{border-color:var(--line);background:var(--surface);color:var(--ink)}.color-style-reference-review{margin-top:16px}.color-style-reference-preview{border:1px solid var(--line);background:var(--surface);cursor:zoom-in;border-radius:6px;flex:0 0 min(260px,35%);place-items:center;height:176px;padding:0;display:grid;position:relative;overflow:hidden}.color-style-reference-preview img{object-fit:contain;max-width:100%;max-height:100%}.color-style-reference-preview span{color:#fff;background:#1d252c;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:11px;display:flex;position:absolute;bottom:8px;right:8px}.color-style-reference-details{flex:1}.color-style-reference-details>strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.color-style-reference-details>label{margin-top:6px;font-size:13px;font-weight:650}.color-style-reference-details>label small{margin-left:8px;font-weight:400}.color-style-reference-details textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:108px;color:var(--ink);font:inherit;resize:vertical;border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.55}.color-style-reference-analyze,.color-style-reference-confirm{justify-self:start;margin-top:6px}.color-style-reference-confirm.confirmed{border-color:var(--success);background:var(--success);color:#fff}.color-style-reference-hint{margin:12px 0 0}.color-style-reference button:disabled,.color-style-reference input:disabled{opacity:.55;cursor:not-allowed}.color-style-reference button:focus-visible,.color-style-reference input:focus-visible,.color-style-reference select:focus-visible,.color-style-reference textarea:focus-visible,.color-style-reference-upload:focus-within{outline:3px solid var(--accent);outline-offset:2px}@media (width<=700px){.color-style-reference{padding:14px}.color-style-reference-review{flex-direction:column}.color-style-reference-preview{flex:auto;width:100%;height:180px}.color-style-reference-details{width:100%}}@media (width<=480px){.color-style-reference-heading{flex-direction:column;gap:4px}.color-style-reference-existing,.color-style-reference-existing>div,.color-style-reference-existing select,.color-style-reference-existing button{width:100%}}
