*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:#e6e5dd;color:#243b30;font:14px/1.5 system-ui,-apple-system,sans-serif}canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.identity{position:absolute;top:max(18px,env(safe-area-inset-top));left:18px;display:flex;align-items:center;gap:12px;pointer-events:none;background:#fbfaf4ed;padding:10px 12px;border:1px solid #ffffffbb;border-radius:8px;max-width:calc(100% - 36px)}.identity .mark{pointer-events:auto;display:grid;place-content:center;line-height:1;background:#253b32;color:#f1ecda;width:45px;height:49px;text-align:center;font-size:25px;text-decoration:none;border-radius:3px}.mark span{font-size:9px;letter-spacing:.2em;margin-top:3px}small{font-size:9px;letter-spacing:.17em;font-weight:600}h1{font-size:24px;font-weight:450;line-height:1.15;letter-spacing:-.04em;margin:4px 0}header p{font-size:10px;margin:3px 0;color:#4b5f51}header strong{font-weight:550}.panel{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:12px;right:12px;padding:16px;background:#fbfaf4f5;border:1px solid #ffffff;border-radius:12px;box-shadow:0 8px 35px #18362915;max-height:48dvh;overflow-y:auto}.view-title{display:flex;gap:12px;justify-content:space-between;align-items:center}.view-title small{font-size:8px}h2{font-weight:500;letter-spacing:-.04em;font-size:21px;line-height:1.2;margin:4px 0 10px}#view-indicator{font:16px Georgia,serif;color:#687665;border:1px solid #d4d9cb;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;flex-shrink:0}.room-description{display:none;font-size:12px;color:#5b6a5d;margin:0 0 17px}.modes{display:flex;background:#e9ece3;border-radius:7px;padding:3px;gap:3px;margin:4px 0 13px}.modes a{display:flex;align-items:center;justify-content:center;min-height:44px;flex:1;border-radius:5px;font-size:12px;font-weight:500;color:#455b4b;text-decoration:none}.modes a.active{background:#fffdf7;color:#243b30;box-shadow:0 1px 5px #142b1512}label{font-size:9px;letter-spacing:.12em;display:block;margin:8px 0 5px}select{width:100%;min-height:44px;border:1px solid #cbd1c3;border-radius:5px;background:#fffef8;color:#293e31;font:13px system-ui;padding:0 12px}.buttons{display:flex;gap:6px;margin-top:9px}button{flex:1;min-height:44px;padding:8px;border:1px solid #cdd4c5;border-radius:5px;color:#324b39;background:#fffef8;font:11px system-ui;cursor:pointer}button[aria-pressed=true]{background:#294332;color:#fff9e7;border-color:#294332}button span{display:block;font-size:9px;opacity:.7;margin-top:2px}button:hover,a:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #b8a265;outline-offset:2px}details{border-top:1px solid #dfe3d7;margin-top:12px;font-size:11px}summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#65745f;font-size:10px}details p{color:#5a695c}details nav{display:flex;flex-wrap:wrap;gap:8px}details a{min-height:44px;display:inline-flex;align-items:center;color:#365d42}.quality{display:flex;align-items:center;gap:8px;min-height:44px;font-size:11px;letter-spacing:0}.panel-footer{display:none;color:#7c8975;font-size:9px;justify-content:space-between;align-items:center}.dot{width:5px;height:5px;background:#748965;border-radius:50%}#loading{position:absolute;inset:0;z-index:20;background:#e6e7df;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}#loading h2{font-size:30px;margin:15px 0 3px}#loading p{font-size:12px;color:#657363}.loader{width:80px;height:2px;background:#98a78a;margin:25px}body.capture .identity,body.capture .panel{display:none}[hidden]{display:none!important}@media(min-width:800px){.identity{left:30px;top:28px}.identity h1{font-size:29px}.panel{left:30px;right:auto;bottom:30px;width:300px;max-height:calc(100dvh - 150px);padding:20px;border-radius:8px}.room-description{display:block}.panel-footer{display:flex}.view-title h2{font-size:24px}.view-title small{font-size:8px}summary{font-size:11px}}@media(max-height:680px) and (max-width:799px){.identity{top:9px}.identity h1{font-size:20px}.panel{max-height:52dvh;padding:11px}.view-title{display:none}.modes{margin-bottom:5px}details{margin-top:5px}}
