*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-font-smoothing:antialiased;background:0 0;width:100%;height:100%;font-family:system-ui,-apple-system,sans-serif;overflow:hidden}#hud{top:env(safe-area-inset-top,16px);pointer-events:none;flex-direction:column;align-items:flex-start;gap:5px;display:flex;position:fixed;left:16px;right:16px}.hud-pill{color:#ffffffe6;font-variant-numeric:tabular-nums;letter-spacing:.01em;background:#00000080;border-radius:6px;padding:4px 9px;font-size:12px;display:inline-block}.ui-state{pointer-events:none;display:none;position:fixed;inset:0}html[data-state=idle] #ui-idle{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 48px);justify-content:center;align-items:flex-end;display:flex}html[data-state=ready] #ui-ready{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 40px);justify-content:center;align-items:flex-end;display:flex}html[data-state=scanning] #ui-scanning{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 40px);flex-direction:column;justify-content:flex-end;align-items:center;gap:12px;display:flex}html[data-state=done] #ui-done{flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.hint-text{color:#fffc;text-align:center;pointer-events:none;background:#00000073;border-radius:8px;padding:8px 16px;font-size:14px}#scan-status{pointer-events:none;gap:8px;display:flex}.status-pill{color:#ffffffd9;font-variant-numeric:tabular-nums;background:#00000080;border-radius:6px;padding:4px 10px;font-size:12px}.status-pill.uploading{color:#4af}.status-pill.ok{color:#4d4}.status-pill.error{color:#f66}.primary-btn{pointer-events:all;color:#000;letter-spacing:.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffeb;border:none;border-radius:28px;padding:15px 44px;font-size:16px;font-weight:600;transition:opacity .15s}.primary-btn:active{opacity:.75}.primary-btn:disabled{color:#00000073;cursor:default;background:#ffffff59}.secondary-btn{pointer-events:all;color:#fff;letter-spacing:.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ff3c3cd9;border:none;border-radius:28px;padding:15px 44px;font-size:16px;font-weight:600;transition:opacity .15s}.secondary-btn:active{opacity:.75}#webxr-entry{background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.done-card{color:#fff;text-align:center;background:#0009;border-radius:16px;padding:28px 36px}.done-card h2{margin-bottom:6px;font-size:20px;font-weight:600}.done-card p{color:#ffffffa6;font-size:14px}
