*{box-sizing:border-box} :root{font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;color:#263a34;background:#fff;font-synthesis:none;--green:#45675b;--muted:#788780;--line:#e8ece9;--surface:#f4f7f5}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #82ad9a;outline-offset:3px}button:hover{color:#284e3e}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.header{height:78px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:3;background:#fff}.brand{display:flex;align-items:center;text-decoration:none;color:inherit;gap:12px}.brand-mark{background:var(--green);color:#fff;width:36px;height:36px;display:grid;place-items:center;border-radius:10px}.brand-mark svg{width:24px;height:24px}.brand strong{font-family:"Microsoft YaHei",sans-serif;font-size:23px;letter-spacing:4px;font-weight:600}.brand-en{font-size:12px;letter-spacing:2px;color:#8b9892;border-left:1px solid #d9e0dc;padding-left:15px;margin-left:2px}.top-tabs{position:absolute;left:50%;transform:translateX(-50%);display:flex;background:#f2f5f3;border:1px solid #e9eeeb;border-radius:9px;padding:4px;gap:4px}.top-tabs button{height:34px;display:flex;align-items:center;gap:8px;padding:0 18px;font-size:13px;border-radius:6px;color:#73817b}.top-tabs button.active{background:#fff;color:var(--green);box-shadow:0 1px 4px #183e2212}.top-tabs svg{width:17px;height:17px}.button{display:flex;align-items:center;gap:9px;background:var(--green);color:white;padding:10px 17px;border-radius:7px;font-size:13px}.button:hover{background:#355447;color:white}.button svg{width:17px;height:17px}.workspace{height:calc(100dvh - 112px);min-height:620px;display:grid;grid-template-columns:minmax(0,1fr) 302px}.viewer{position:relative;background:#e9efed;overflow:hidden;min-width:0}.viewer::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,#f7f9f700,#d6e1dc22)}#canvas-host{position:absolute;inset:0}#canvas-host canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}.scene-heading{position:absolute;left:34px;top:32px;pointer-events:none}.project-tag{font-size:12px;color:#7b8d83;display:flex;align-items:center;gap:7px;letter-spacing:1px}.project-tag span{height:5px;width:5px;background:#6e9281;border-radius:50%}.scene-heading h1{font-family:"Songti SC","Noto Serif SC","SimSun",serif;font-weight:500;font-size:32px;margin:13px 0 9px;letter-spacing:2px}.scene-heading p{font-size:13px;color:#718178;margin:0}.scene-badge{position:absolute;right:25px;top:31px;display:flex;gap:7px;align-items:center;color:#73877c;font-size:11px;background:#fff9;border:1px solid #ffffff90;border-radius:5px;padding:7px 10px}.live-dot,.statusbar i{display:inline-block;width:5px;height:5px;background:#729581;border-radius:50%}.sidebar{border-left:1px solid var(--line);padding:28px 23px 18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d4ded7 transparent;background:#fff}.small-label{font-size:11px;color:#8c9a92;letter-spacing:1px}.sidebar h2{font-size:21px;font-weight:600;letter-spacing:.5px;margin:10px 0 8px}.sidebar-intro p{font-size:12px;color:#88958e;margin:0 0 23px}.side-tabs{display:flex;padding:3px;background:#f2f5f3;border-radius:7px;margin-bottom:17px;gap:3px}.side-tabs button{flex:1;padding:8px 0;font-size:12px;border-radius:5px;color:#859289}.side-tabs button.active{background:#fff;box-shadow:0 1px 3px #263a3410;color:#345745}.room-nav{display:flex;flex-direction:column;gap:3px}.room-nav button{display:flex;align-items:center;width:100%;gap:12px;padding:10px 11px;min-height:39px;border-radius:6px;text-align:left;font-size:13px;color:#687c6f}.room-nav button>svg:first-child{width:17px;height:17px;stroke-width:1.4;color:#859b8c}.room-nav button span{flex:1}.room-nav small{font-size:10px;color:#869c8c}.room-nav .room-arrow{width:13px;height:13px;color:#a2b2a7}.room-nav button:hover{background:#f3f6f3}.room-nav button.active{background:#eaf1ec;color:#30553f;font-weight:600}.room-nav button.active>svg{color:#4f755f}.room-description{display:flex;gap:10px;margin:16px 5px 16px;color:#819088}.description-line{display:block;width:2px;flex-shrink:0;background:#c9d8ce;margin:3px 0}.room-description p{font-size:11px;line-height:1.9;margin:0}.section-divider{height:1px;background:var(--line);margin:16px 0}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 3px;min-height:35px}.setting-row label{font-size:12px;cursor:pointer}.setting-row label span{display:block;font-size:10px;color:#8e9b92;margin-top:5px}.switch{appearance:none;-webkit-appearance:none;width:29px;height:17px;background:#e5eae7;position:relative;border-radius:20px;cursor:pointer;transition:background .2s;flex-shrink:0;margin:0}.switch::after{content:"";width:13px;height:13px;position:absolute;left:2px;top:2px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:transform .2s}.switch:checked{background:#5a8068}.switch:checked::after{transform:translateX(12px)}h3{font-size:12px;font-weight:500;margin:18px 0 12px}.lighting-section{margin-top:15px;border-top:1px solid var(--line)}.light-options{display:flex;border:1px solid var(--line);padding:3px;border-radius:6px;gap:3px}.light-options button{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;padding:7px;border-radius:4px;color:#8a968f}.light-options button.active{background:#edf2ee;color:#476553}.light-options svg{width:15px;height:15px}.sidebar-footer{margin-top:23px;padding-top:16px;border-top:1px solid var(--line)}.sidebar-footer button{width:100%;display:flex;align-items:center;gap:8px;padding:0;font-size:11px;color:#587966}.sidebar-footer svg{width:15px;height:15px}.sidebar-footer svg:last-child{margin-left:auto}.sidebar-footer p{font-size:10px;line-height:1.8;color:#9aa69e;margin:14px 0 0}.statusbar{height:34px;border-top:1px solid var(--line);padding:0 26px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#91a097;gap:10px}.statusbar>span:first-child{display:flex;align-items:center;gap:7px;color:#81988a}.minimap{position:absolute;left:28px;bottom:38px;background:#fffffff0;border:1px solid #fff;border-radius:10px;width:146px;padding:12px 10px 9px;box-shadow:0 5px 24px #2f493509}.mini-title{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#758a7b;padding:0 2px}.mini-title button{font-size:17px;padding:0 3px;color:#889d8c}#mini-plan{width:100%;height:140px;display:block;margin:9px auto 7px;stroke:#9fae9f;stroke-width:5;stroke-linejoin:round}#mini-plan .map-room{fill:#e6ede5;cursor:pointer;transition:fill .2s}#mini-plan .map-room.active{fill:#a4b9a5}#mini-plan .map-room:hover{fill:#c1d0bc}#mini-plan text{stroke:none;font-size:31px;fill:#607b65;pointer-events:none;font-family:inherit}.map-foot{border-top:1px solid #e8eee8;padding-top:8px;display:flex;align-items:center;gap:4px;font-size:9px;color:#819180}.map-dot{width:4px;height:4px;border-radius:50%;background:#7d987f}.orientation{margin-left:auto;font-size:8px}.minimap.collapsed #mini-plan,.minimap.collapsed .map-foot{display:none}.viewer-bottom{position:absolute;left:50%;transform:translateX(-50%);bottom:48px;display:flex;flex-direction:column;align-items:center;gap:10px}.mode-tools,.camera-tools{display:flex;align-items:center;border:1px solid #fff;background:#fffffff2;border-radius:8px;padding:4px;box-shadow:0 3px 15px #34544209;gap:3px}.mode-tools button{padding:8px 13px;display:flex;align-items:center;gap:6px;border-radius:5px;font-size:12px;color:#829085;white-space:nowrap}.mode-tools button.active{background:#eaf1e9;color:#42654a}.mode-tools svg{width:16px;height:16px}.camera-tools{padding:4px 9px;gap:5px;border-radius:7px}.camera-tools button{display:grid;place-items:center;width:30px;height:26px;border-radius:4px;color:#74867a}.camera-tools button:hover{background:#edf2ed}.camera-tools svg{width:16px;height:16px}.camera-tools>span{height:13px;width:1px;background:#e4eae5;margin:0 3px}.interaction-hint{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:10px;color:#87998b;white-space:nowrap}.room-label{position:absolute;display:flex;align-items:center;gap:5px;transform:translate(-50%,-50%);padding:6px 10px;border:1px solid #ffffffd0;background:#ffffffd9;border-radius:5px;box-shadow:0 2px 12px #203e2810;white-space:nowrap;font-size:10px;color:#5c7463;pointer-events:auto}.room-label::before{content:"";width:4px;height:4px;border-radius:50%;background:#7e9b7e}.room-label:hover{background:#fff;color:#254c31}#labels{position:absolute;inset:0;pointer-events:none}.plan-layer{position:absolute;inset:0;background:#eef2ef;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:35px 30px 100px;gap:10px;z-index:1}.plan-layer img{height:100%;max-height:calc(100% - 25px);width:auto;max-width:100%;object-fit:contain;box-shadow:0 4px 30px #243b3610;border-radius:3px}.plan-layer div{font-size:12px;color:#7d8a7f}.viewer:has(.plan-layer:not([hidden])) .minimap,.viewer:has(.plan-layer:not([hidden])) .viewer-bottom,.viewer:has(.plan-layer:not([hidden])) .interaction-hint{display:none}.style-options{display:flex;flex-direction:column;gap:9px}.style-options button{display:flex;align-items:center;gap:12px;border:1px solid #e7ece7;border-radius:7px;padding:12px 10px;text-align:left;font-size:13px}.style-options button.active{border-color:#92ad99;background:#f6f8f4}.palette{display:flex;width:42px;height:38px;overflow:hidden;border-radius:4px;flex-shrink:0}.palette i{flex:1}.style-options small{display:block;font-size:10px;color:#8e9b91;margin-top:6px}.style-options svg{width:16px;height:16px;margin-left:auto;color:#61876b;visibility:hidden}.style-options .active svg{visibility:visible}.floor-options{display:flex;gap:10px}.floor-options button{flex:1;border:1px solid #e4eae4;border-radius:6px;padding:6px 6px 10px;font-size:11px}.floor-options .active{border-color:#8eaa94;color:#40634b}.sample{display:block;height:56px;border-radius:3px;margin-bottom:8px}.wood-sample{background:repeating-linear-gradient(92deg,#baa38220 0 1px,transparent 1px 7px),repeating-linear-gradient(0deg,#dbc5a4 0 15px,#b79f7c 15px 16px,#d3bd9c 16px 33px)}.stone-sample{background:linear-gradient(130deg,#e4e0d6,#d1d1c8)}.material-note{font-size:11px;color:#8b978e;line-height:1.8}.walk-controls{position:absolute;right:25px;bottom:45px;text-align:center}.walk-controls button{background:#fffdf5;border:1px solid #d8e2d8;border-radius:5px;width:36px;height:34px;margin:2px;color:#51745a;box-shadow:0 2px 7px #243c2210}.walk-controls>div{display:flex}#toast{position:fixed;bottom:60px;left:50%;transform:translate(-50%,12px);background:#2f4c3eee;color:white;border-radius:7px;padding:12px 20px;font-size:13px;opacity:0;pointer-events:none;z-index:20;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}#loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;background:#eaf0ec;z-index:5;color:#557360}#loader span{font-size:12px;color:#8c9e90}#loader strong{font-size:17px;font-weight:500}.loading-cube svg{width:50px;height:50px}.viewer.night{background:#5c696b}.viewer.night .scene-heading,.viewer.night .scene-heading p,.viewer.night .project-tag,.viewer.night .interaction-hint{color:#f1f0e5}.viewer.night .scene-badge{background:#fff9}.viewer.night .scene-heading p{opacity:.7}
@media(min-height:940px){.sidebar{padding-top:35px}.room-nav button{min-height:44px}.setting-row{padding-top:12px;padding-bottom:12px}.sidebar-footer{margin-top:28px}}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 268px}.sidebar{padding-left:18px;padding-right:18px}.scene-heading{left:25px;top:27px}.scene-heading h1{font-size:26px}.minimap{width:119px;left:20px;padding:9px}.minimap #mini-plan{height:112px}.orientation{display:none}.viewer-bottom{left:58%}.interaction-hint{left:58%}.scene-badge{display:none}}
@media(max-width:760px){.header{height:64px;padding:0 17px}.brand{gap:8px}.brand-mark{width:30px;height:30px;border-radius:8px}.brand strong{font-size:20px}.brand-en{display:none}.top-tabs{position:static;transform:none;margin-left:auto;margin-right:12px}.top-tabs button{font-size:11px;padding:0 10px;gap:5px;height:30px}.export-btn{padding:9px}.export-btn span{display:none}.workspace{height:auto;min-height:0;display:flex;flex-direction:column}.viewer{height:65dvh;min-height:450px;max-height:780px}.sidebar{border-left:0;border-top:1px solid var(--line);padding:24px 23px;overflow:visible}.sidebar-intro{display:none}.side-tabs{max-width:330px;margin:0 auto 18px}.room-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.room-nav button{font-size:12px;min-height:42px}.room-description{margin:15px 5px}.section-divider{margin:10px 0}.setting-row{display:inline-flex;width:49%;padding:10px 12px 10px 3px;vertical-align:middle;min-height:50px}.setting-row label span{font-size:9px}.lighting-section{margin-top:10px}.sidebar-footer p{font-size:11px}.statusbar{height:32px;padding:0 14px}.statusbar>span:nth-child(2){display:none}.scene-heading{top:23px;left:22px}.scene-heading h1{font-size:25px;margin:10px 0 8px}.scene-heading p{font-size:11px}.project-tag{font-size:10px}.minimap{width:91px;left:14px;bottom:26px;padding:8px}.minimap #mini-plan{height:85px;margin:6px 0}.mini-title{font-size:9px}.map-foot{font-size:8px}.viewer-bottom{left:auto;right:16px;transform:none;bottom:45px;gap:7px}.mode-tools button{font-size:10px;padding:7px 9px;gap:5px}.mode-tools svg{width:13px;height:13px}.camera-tools{padding:3px 7px}.camera-tools button{width:25px;height:23px}.interaction-hint{left:auto;right:19px;bottom:23px;transform:none;font-size:9px}.room-label{padding:4px 7px;font-size:9px}.walk-controls{right:18px;bottom:145px}.style-options{flex-direction:column}.floor-options .sample{height:66px}.plan-layer{padding:20px}.scene-badge{display:none}.lighting-section h3{font-size:13px}.light-options button{font-size:12px}}
.brand strong{letter-spacing:0;font-size:22px;white-space:nowrap}.brand-full{font-size:16px;font-weight:500;margin-left:6px}.room-nav button,.setting-row label,.side-tabs button{font-size:14px}.room-description p,.sidebar-footer button,.light-options button{font-size:12px}.room-label{font-size:12px}.viewer:has(.plan-layer:not([hidden])) .walk-controls{display:none}
@media(max-width:760px){.header{height:105px;flex-wrap:wrap;padding:12px 17px;gap:7px}.brand{width:calc(100% - 46px)}.brand strong{font-size:21px}.brand-full{font-size:16px}.top-tabs{order:3;margin:0 auto;flex-shrink:0}.export-btn{position:absolute;right:17px;top:13px}}
@media(max-width:760px){.room-label{font-size:10px}.room-nav button{font-size:13px}.setting-row label{font-size:12px}}
.scheme-bar{height:62px;display:flex;align-items:center;gap:19px;padding:0 30px;border-bottom:1px solid var(--line);background:#fbfcfb}.scheme-bar>span{font-size:12px;color:#819088}.scheme-switch{display:flex;gap:5px;padding:4px;border:1px solid #e0e8e1;border-radius:8px;background:#f1f5f1}.scheme-switch button{display:flex;align-items:center;gap:8px;border-radius:5px;padding:9px 20px;font-size:14px;color:#738277}.scheme-switch button.active{background:#45675b;color:white;box-shadow:0 1px 4px #23443115}.scheme-switch svg{height:17px;width:17px}.scheme-bar .scheme-context{margin-left:auto;letter-spacing:.5px}.workspace{height:calc(100dvh - 174px)}.project-tag #scheme-caption{height:auto;width:auto;background:none;border-radius:0}
@media(max-width:760px){.scheme-bar{height:64px;padding:0 17px;gap:12px}.scheme-switch{flex:1}.scheme-switch button{flex:1;justify-content:center;padding:9px 6px;font-size:13px;white-space:nowrap}.scheme-bar .scheme-context{display:none}.workspace{height:auto}.viewer{height:61dvh;min-height:430px}}
.marble-sample{background:#ebe5dc url('./textures/marble-color.jpg') center/cover}.scene-heading{max-width:80%}.scene-heading h1{font-size:28px}
.interior-entry{pointer-events:auto;display:flex;align-items:center;gap:7px;font-size:12px;margin-top:15px;padding:8px 12px;border:1px solid #c1b394;border-radius:5px;color:#7b6744;background:#fffaf0e6}.interior-entry svg{width:15px;height:15px}.interior-entry:hover{background:#fff7e7;color:#634b21}
@media(max-width:760px){.scene-heading h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* The photographic design is the residential entry point; 3D remains a separate working view. */
.top-tabs button{font-size:14px;padding:0 13px;white-space:nowrap}
.photo-layer{position:absolute;inset:0;background:#242a27;color:#fff}
body[data-view="photo"] .workspace{min-height:0}
.photo-image-button{display:block;width:100%;height:100%;padding:0;cursor:zoom-in}
.photo-image-button img{display:block;width:100%;height:100%;object-fit:contain}
.photo-label{position:absolute;top:22px;left:24px;background:#18261cbd;padding:8px 12px;font-size:13px;border-radius:4px;pointer-events:none}
.photo-tools{position:absolute;bottom:20px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.photo-tools>span{font-size:14px;background:#18261cbd;padding:9px 12px;border-radius:4px}
.photo-tools button{pointer-events:auto;display:flex;align-items:center;gap:8px;background:#fff;color:#263a34;padding:10px 14px;border-radius:5px;font-size:14px;box-shadow:0 2px 12px #0002}
.photo-sidebar{padding:34px 25px;overflow-y:auto;background:#fff;scrollbar-width:thin}
.photo-eyebrow{font-size:13px;color:#7c7566;letter-spacing:1px}
.photo-sidebar h1{font-family:"Songti SC","SimSun",serif;font-size:30px;font-weight:500;margin:18px 0 8px}
.photo-style{font-size:16px;color:#7b6744;margin:0 0 22px}
.photo-description{font-size:15px;line-height:1.85;color:#64726b}
.photo-materials{border-block:1px solid var(--line);padding:10px 0;margin:22px 0}
.photo-materials>div{display:flex;gap:16px;font-size:14px;padding:9px 0}
.photo-materials dt{color:#8b938b;flex-shrink:0}.photo-materials dd{margin:0}
.photo-layout-button,.photo-plan-button{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;border-radius:6px;padding:13px 8px}
.photo-layout-button{background:var(--green);color:white}.photo-layout-button:hover{background:#355447;color:#fff}
.photo-plan-button{border:1px solid #d9e1db;margin-top:10px}
.photo-other-rooms{margin-top:26px}.photo-other-rooms h2{font-size:16px;margin:0 0 8px;font-weight:500}.photo-other-rooms p{font-size:13px;color:#7b887f;margin:0 0 12px}
.photo-other-rooms>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.photo-other-rooms button{padding:10px 3px;font-size:14px;border:1px solid var(--line);border-radius:4px}.photo-other-rooms button:hover{background:var(--surface)}
.photo-disclosure{margin:25px 0 0;padding-top:17px;border-top:1px solid var(--line);font-size:12px;line-height:1.8;color:#7b837b}
.photo-error{position:absolute;inset:0;background:#242a27;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;padding:30px}.photo-error button{color:#fff;text-decoration:underline}
body:not([data-view="photo"]) .photo-layer,body:not([data-view="photo"]) .photo-sidebar{display:none}
body[data-view="photo"] .layout-sidebar,body[data-view="photo"] .viewer>:not(.photo-layer){display:none!important}
body[data-view="photo"] .viewer::before{display:none}
body[data-view="plan"] .layout-sidebar,body[data-view="plan"] .scene-heading,body[data-view="plan"] .scene-badge,body[data-view="plan"] #loader,body[data-view="plan"] #labels{display:none!important}
body[data-view="plan"] .workspace{grid-template-columns:minmax(0,1fr)}
body[data-view="plan"] .plan-layer{padding:24px}
#photo-dialog{width:min(96vw,1800px);height:94dvh;max-width:96vw;max-height:94dvh;padding:0;border:1px solid #ffffff24;border-radius:10px;background:#191e1b;color:#fff;overflow:hidden}
#photo-dialog::backdrop{background:#09120be6}
#photo-dialog[open]{display:flex;flex-direction:column}
.photo-dialog-header,.photo-dialog-footer{display:flex;align-items:center;gap:18px;padding:12px 20px;flex-shrink:0;font-size:14px}
.photo-dialog-header{justify-content:space-between;border-bottom:1px solid #ffffff20}
.photo-dialog-header button{width:40px;height:40px;display:grid;place-items:center;color:#fff;border-radius:5px;background:#ffffff10}
.photo-dialog-stage{flex:1;overflow:auto;min-height:0;display:flex;align-items:center;justify-content:center}
.photo-dialog-stage img{width:100%;height:100%;object-fit:contain;display:block}
.actual-size .photo-dialog-stage{display:block}.actual-size .photo-dialog-stage img{width:1562px;height:auto;max-width:none}
.photo-dialog-footer{border-top:1px solid #ffffff20;flex-wrap:wrap}.photo-dialog-footer span{margin-right:auto;color:#b7c1b9;font-size:13px}.photo-dialog-footer button{padding:10px 12px;border:1px solid #ffffff40;border-radius:5px;color:white}
body:has(#photo-dialog[open]){overflow:hidden}
@media(min-width:761px) and (max-width:1100px){.header{height:116px;align-items:flex-start;padding-top:18px}.top-tabs{top:68px}.workspace{height:calc(100dvh - 212px)}}
@media(max-width:760px){.top-tabs{width:100%;justify-content:center}.top-tabs button{font-size:14px;padding:0 12px}.header{height:115px}.photo-sidebar{padding:25px 22px}.photo-sidebar h1{font-size:28px;margin-top:12px}.photo-description{max-width:580px}.photo-materials{margin:18px 0}.photo-other-rooms>div{grid-template-columns:repeat(3,1fr)}body[data-view="photo"] .viewer{height:auto;min-height:0;max-height:none;aspect-ratio:1562/1007}.photo-label{left:12px;top:12px;font-size:12px;padding:6px 9px}.photo-tools{left:12px;right:12px;bottom:12px}.photo-tools>span{display:none}.photo-tools button{margin-left:auto;font-size:13px;padding:8px 10px}.photo-tools svg{width:16px;height:16px}.photo-dialog-header,.photo-dialog-footer{padding:10px 12px;gap:10px}.photo-dialog-header>span{font-size:13px}.photo-dialog-footer>span{width:100%;margin:0}.photo-dialog-footer button{flex:1}body[data-view="plan"] .viewer{height:70dvh;min-height:450px}}
#load-progress{width:190px;height:6px;accent-color:#527764}#load-plan{padding:10px 18px;border:1px solid #aabdaf;border-radius:6px}#quality-status{position:absolute;right:20px;top:70px;max-width:260px;padding:9px 12px;border-radius:6px;background:#fffffff0;color:#426451;font-size:12px;z-index:3;pointer-events:none}#quality-status button{pointer-events:auto;text-decoration:underline}body:not([data-view="3d"]) #quality-status{display:none}
