:root{font-family:system-ui,-apple-system,sans-serif;color-scheme:light dark}*{box-sizing:border-box}body{margin:0;padding:1rem;line-height:1.5}main{max-width:540px;margin:0 auto}h1{font-size:1.4rem}h2{font-size:1.05rem;margin-bottom:.4rem}button{font-size:1.05rem;padding:.7rem 1.1rem;margin:.25rem .25rem .25rem 0;border-radius:8px;border:1px solid currentColor;background:transparent;cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}input[type=file]{font-size:1rem}section{margin:1.25rem 0;padding-top:.75rem;border-top:1px solid rgba(128,128,128,.3)}.diag{font-size:.9rem;font-family:ui-monospace,monospace}.error{color:#c0392b;font-weight:600}.video-wrap{position:relative;display:inline-block;max-width:100%}.video-wrap video{width:100%;max-width:480px;border-radius:8px;display:block}.overlay{position:absolute;top:50%;left:50%;width:60%;height:30%;transform:translate(-50%,-50%);border:3px dashed rgba(255,255,255,.9);border-radius:8px;pointer-events:none}.result img{width:100%;max-width:480px;border-radius:8px}table.metrics{border-collapse:collapse;font-size:.95rem;margin-top:.5rem}table.metrics td{padding:.2rem .6rem .2rem 0;vertical-align:top}table.metrics td:first-child{font-weight:600;white-space:nowrap}
