*{box-sizing:border-box} :root{--white:#faf9f4;--dark:#242b28;--accent:#d9c297}body{margin:0;font:14px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif;color:var(--white);background:#222923;overflow:hidden}button{font:inherit;cursor:pointer;color:inherit;border:1px solid #ffffff38;background:#242b28dc;border-radius:10px;min-height:44px;padding:9px 14px}button:hover{background:#465048}button:focus-visible,canvas:focus-visible{outline:3px solid #d9c297;outline-offset:3px}button[aria-pressed=true]{background:var(--white);color:var(--dark);border-color:var(--white)}#view{width:100%;height:100dvh;display:block;touch-action:none;cursor:grab}#view:active{cursor:grabbing}header{position:fixed;z-index:10;left:24px;right:24px;top:max(20px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}header>*{pointer-events:auto}.logo{font-size:27px;font-weight:600;text-shadow:0 2px 14px #0009}.logo span{font-size:12px;font-weight:400;margin-left:10px;vertical-align:middle}.tools{display:flex;gap:7px}.room-label{position:fixed;left:32px;bottom:168px;text-shadow:0 2px 20px #000b;pointer-events:none;z-index:10}.room-label span{font-size:11px;font-weight:600}.room-label h1{font-size:40px;line-height:1.2;margin:7px 0}.room-label p{margin:0;font-size:13px}footer{position:fixed;z-index:10;bottom:0;left:0;right:0;padding:15px 24px max(14px,env(safe-area-inset-bottom));background:#202723e8;text-align:center}nav{display:flex;gap:8px;justify-content:center;overflow:auto;scrollbar-width:thin}nav button{white-space:nowrap;border-radius:99px;min-width:78px}footer p{font-size:11px;opacity:.85;margin:10px 0 1px}footer small{font-size:10px;opacity:.6}.pad{position:fixed;z-index:10;right:24px;bottom:164px;text-align:center}.pad button{width:45px;padding:8px;font-size:20px;touch-action:none}.pad div{display:flex;gap:4px;margin-top:4px}.crosshair{position:fixed;pointer-events:none;top:50%;left:50%;font-size:24px;text-shadow:0 1px 5px #000}#furnish{position:fixed;right:24px;top:86px;z-index:10;font-size:12px}aside{position:fixed;z-index:20;right:24px;top:140px;width:340px;max-height:calc(100dvh - 300px);overflow:auto;background:#faf8f1;color:#303a32;border-radius:18px;padding:24px;box-shadow:0 18px 65px #0004}aside button{color:#303a32;background:#e9e7dd}#closePanel{float:right;min-height:32px;padding:1px 9px;font-size:24px}.kicker{font-size:11px;color:#697366}aside h2{font-size:22px;margin:8px 0 12px}aside p{font-size:13px}aside .fine{font-size:11px;color:#71796f;border-top:1px solid #dadfd2;padding-top:12px}#items button{width:100%;text-align:left;margin:4px 0;border-color:#d2d7ca;font-size:12px}#items a{color:#426249;display:block;margin:12px 0;font-size:12px}dialog{background:#faf8f1;color:#303a32;border:0;border-radius:20px;max-width:440px;padding:28px;width:calc(100% - 32px)}dialog::backdrop{background:#16251bbd}dialog h2{margin-top:0}dialog p{font-size:14px}dialog button{background:#3d5948;width:100%;margin-top:10px}#loading,#error{position:fixed;z-index:30;left:50%;top:45%;transform:translate(-50%,-50%);background:#242b28ed;padding:25px;border-radius:16px;max-width:90vw}#error{color:#ffe7d6} [hidden]{display:none!important}@media(max-width:640px){header{left:12px;right:12px;top:max(12px,env(safe-area-inset-top));align-items:start}.logo{font-size:22px}.logo span{display:block;font-size:10px;margin:0}.tools{gap:4px}.tools button{padding:7px 10px;font-size:11px}.room-label{left:18px;bottom:177px;max-width:calc(100% - 145px)}.room-label h1{font-size:30px}.room-label p{font-size:11px}footer{padding-left:12px;padding-right:12px}nav{justify-content:start}nav button{min-width:67px;font-size:12px}.pad{right:12px;bottom:162px}.pad button{width:39px;min-height:39px}#furnish{right:12px;top:72px}aside{right:12px;left:12px;top:125px;width:auto;max-height:calc(100dvh - 280px)}}
.view-modes{position:fixed;z-index:11;top:86px;left:24px;right:190px;justify-content:flex-start;gap:6px}.view-modes button{font-size:12px;min-width:auto;border-radius:8px;white-space:nowrap}#planLabels{position:fixed;inset:0;pointer-events:none;z-index:6}#planLabels button{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:#faf8f1ed;color:#283c31;border:1px solid #c3c9b9;min-height:32px;padding:4px 9px;font-size:12px;box-shadow:0 2px 6px #0002}body[data-view=plan] .room-label,body[data-view=room] .room-label,body[data-view=house] .room-label{color:#273c32;text-shadow:0 1px 3px #fff;bottom:145px}body[data-view=plan] .pad,body[data-view=room] .pad,body[data-view=house] .pad,body:not([data-view=inside]) .crosshair{display:none}body[data-view=plan] #furnish,body[data-view=room] #furnish{display:none}@media(max-width:640px){.view-modes{top:116px;left:12px;right:12px;overflow:auto}.view-modes button{padding:7px 10px;min-height:40px;font-size:11px}body[data-view=plan] .room-label,body[data-view=room] .room-label{left:16px;bottom:142px;max-width:90%}body[data-view=plan] .room-label h1,body[data-view=room] .room-label h1{font-size:22px}#planLabels button{font-size:10px;padding:2px 5px;min-height:28px}.view-modes::-webkit-scrollbar{height:0}}

#planExport{max-width:760px;max-height:90dvh;overflow:auto}#planExport img{display:block;width:100%;height:auto;margin-top:16px}#planExport a{color:#315b44;display:inline-block;padding:12px 0}#planExport button{width:auto;margin:0}
