:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#1f2a29;background:#eef2f1;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select,input{font:inherit}button{cursor:pointer;border:1px solid #c8d5d2;background:#fff;color:inherit;border-radius:5px}button:hover{border-color:#176b68}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #e1a750;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:1.45rem;margin-bottom:5px}h2{font-size:1.08rem}h3{font-size:1rem}small,.muted{color:#62736f}.app{min-height:100vh}.topbar{display:flex;align-items:center;gap:28px;min-height:78px;padding:10px 22px;background:#fff;border-bottom:1px solid #cedbd8}.brand{display:flex;gap:10px;align-items:center;min-width:180px}.brand strong{display:block;font-size:1.18rem}.brand small{display:block;margin-top:3px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:#176b68;color:#fff;font-size:1.5rem;border-radius:7px}.metrics{display:flex;gap:24px;margin-left:auto}.metrics div{min-width:95px}.metrics strong,.metrics small{display:block}.metrics strong{font-size:1.08rem}.time-controls{display:flex;gap:3px;border-left:1px solid #d5dfdc;padding-left:18px}.time-controls button{min-width:40px;height:44px;font-weight:700}.time-controls .selected,.room-nav .selected,.tabs .selected{background:#176b68;border-color:#176b68;color:#fff}.notice{display:flex;align-items:center;justify-content:space-between;padding:10px 22px;background:#fcebc8;color:#583e18}.notice button{width:40px;height:40px;border:0;background:transparent;font-size:1.5rem}.room-nav{display:flex;gap:5px;overflow-x:auto;padding:10px 22px;background:#f7f9f8;border-bottom:1px solid #d5dfdc}.room-nav button{flex:0 0 auto;min-height:56px;padding:0 15px;font-weight:650}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,370px);min-height:min(750px,75vh)}.room-view{min-width:0;padding:16px 22px}.room-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.room-heading small{color:#176b68;font-weight:750}.room-heading p{margin-bottom:10px;color:#62736f}.room-heading span{background:#e3ece9;padding:7px 10px;border-radius:5px;font-size:.85rem}.scene{aspect-ratio:16 / 9;width:100%;overflow:hidden;background:#245b5c}.scene canvas{display:block;width:100%;height:100%;object-fit:contain}.hotspot-actions{display:flex;flex-wrap:wrap;gap:7px;padding:9px 0}.hotspot-actions button{min-height:56px;padding:8px 13px;font-weight:650}.room-activity{display:grid;gap:7px;padding:14px 0;font-size:.9rem}.room-activity div{display:flex;justify-content:space-between;border-bottom:1px solid #dce5e2;padding:4px 0}.side{min-width:0;background:#fff;border-left:1px solid #d5dfdc}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:8px;border-bottom:1px solid #d5dfdc}.tabs button{min-height:56px;padding:4px;font-size:.82rem;font-weight:650}.side-content{padding:14px;max-height:780px;overflow-y:auto}.side-content h2{display:flex;justify-content:space-between;margin-bottom:12px}.list{display:grid;gap:4px;max-height:360px;overflow-y:auto}.row{display:grid;gap:4px;width:100%;padding:10px;border:1px solid #d8e2df;border-radius:5px;background:#fff;text-align:left;margin-bottom:6px}.row.selected{border-color:#176b68;background:#edf7f4}.row span{font-size:.86rem;color:#455854}.row small{font-size:.78rem}.row button,.actions button,.detail button{min-height:56px;padding:7px 14px;background:#176b68;color:#fff;border-color:#176b68;font-weight:650}.row button:hover,.actions button:hover,.detail button:hover{background:#0f514e}.detail,.report{border-top:1px solid #cddbd7;margin-top:14px;padding-top:14px}.detail p,.report p{margin-bottom:7px}.actions{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}label{display:grid;gap:7px;margin:10px 0}select{width:100%;min-height:48px;border:1px solid #9eb8b1;border-radius:5px;background:#fff;padding:5px}input[type=range]{width:100%;accent-color:#176b68}.file-input{display:none}.ledger{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #e1e8e6}.bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:20px 22px;border-top:1px solid #d5dfdc;background:#fff}.bottom section{min-width:0}.bottom p{margin-bottom:8px;font-size:.88rem}.bottom .bad{color:#a4312d}.bottom .good{color:#176b68}@media(max-width:1000px){.topbar{flex-wrap:wrap;gap:12px}.metrics{margin-left:0}.workspace{grid-template-columns:minmax(0,1fr) 320px}}@media(max-width:730px){.topbar{padding:10px}.metrics{width:100%;justify-content:space-between;order:2;gap:8px}.metrics div{min-width:0}.time-controls{margin-left:auto;padding-left:0;border:0}.room-nav{padding:8px 10px}.workspace{display:block}.room-view{padding:12px 10px}.side{border-left:0;border-top:1px solid #d5dfdc}.side-content{max-height:none}.bottom{grid-template-columns:1fr;padding:15px 10px}}
