:root{--primary:#0d2133;--secondary:#173259;--yellow:#f7d037;--light:#fdf3c3;--muted:#9daec0;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:var(--primary);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif;color:var(--light)}body{overflow:hidden}button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--light);outline-offset:4px}[hidden]{display:none!important}.camera-shell{position:relative;isolation:isolate;width:min(100vw,calc(100vh * 9 / 16));height:100vh;margin:0 auto;display:grid;place-items:center;overflow:hidden}.viewport{position:relative;width:100%;aspect-ratio:9/16;background:var(--secondary);overflow:hidden}.viewport video,.viewport>#result,.viewport>#overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.viewport video.mirrored{transform:scaleX(-1)}.viewport>#overlay{z-index:1;pointer-events:none}.viewport>#result{z-index:2;object-fit:contain}#empty{position:absolute;inset:0;z-index:3;display:grid;place-items:center;background:transparent}svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 18px;border-radius:12px;font-size:14px;font-weight:750;border:1px solid transparent}.primary{background:var(--yellow);color:var(--primary);box-shadow:0 4px 20px #0d21334d}.secondary{background:#173259ed;color:var(--light);border-color:#9daec059}#start{background:#fff;min-height:58px;padding:17px 25px;font-size:17px}.camera-switch{position:absolute;z-index:5;bottom:calc(env(safe-area-inset-bottom,0px) + 32px);left:16px;display:grid;place-items:center;width:44px;height:44px;padding:10px;background:#fff;color:var(--primary);border:0;border-radius:50%}.camera-switch svg{width:22px;height:22px}.camera-switch:disabled{background:#fff;color:var(--muted);opacity:.5}.viewport.review~.camera-switch{display:none}.controls{position:absolute;z-index:4;bottom:calc(env(safe-area-inset-bottom,0px) + 15px);left:0;right:0;display:flex;justify-content:center;align-items:center;gap:8px;padding:14px 10px 0;background:transparent;min-height:92px}.shutter{display:grid;place-items:center;width:78px;height:78px;flex-shrink:0;border-radius:50%;border:3px solid #fff;background:transparent;padding:5px}.shutter span{display:block;width:100%;height:100%;border-radius:50%;background:#fff}.shutter:active:not(:disabled) span{transform:scale(.9)}.controls .primary{background:#fff;flex:1;max-width:200px}.controls .secondary{padding:12px;font-size:13px}.status{position:absolute;z-index:5;bottom:calc(env(safe-area-inset-bottom,0px) + 142px);left:14px;right:14px;margin:0;padding:12px 14px;border:1px solid #9daec04d;border-radius:10px;background:#0d2133ed;color:var(--light);font-size:12px;line-height:1.7;box-shadow:0 3px 20px #0d213333}.save-help{position:absolute;z-index:6;bottom:calc(env(safe-area-inset-bottom,0px) + 108px);right:12px;font-size:12px;line-height:1.7}.save-help summary{list-style:none;cursor:pointer;min-height:32px;padding:5px 12px;border:1px solid #9daec066;border-radius:20px;background:#0d2133e6;color:var(--light)}.save-help summary::-webkit-details-marker{display:none}.save-help>div{position:absolute;right:0;bottom:42px;width:min(340px,calc(100vw - 24px));max-height:55vh;overflow:auto;padding:8px 17px;border:1px solid #9daec066;border-radius:12px;background:#0d2133fa;box-shadow:0 4px 25px #0d213366}.save-help p{margin:12px 0}.save-help b{color:var(--yellow)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@supports(height:100dvh){.camera-shell{width:min(100vw,calc(100dvh * 9 / 16));height:100dvh}.save-help>div{max-height:55dvh}}@media(max-width:350px){.controls{gap:5px;padding-inline:7px}.controls .secondary{padding:11px 8px;font-size:12px}.controls .primary{padding-inline:10px;font-size:12px}}@media(orientation:landscape) and (max-height:500px){.camera-shell{width:min(100vw,calc(100dvh * 9 / 16))}.camera-switch{bottom:13px;left:8px;width:40px;height:40px;padding:9px}.camera-switch svg{width:20px;height:20px}.controls{gap:4px;bottom:6px;padding-inline:4px;min-height:64px}.shutter{width:54px;height:54px}.controls .primary,.controls .secondary{min-height:36px;padding:8px 6px;font-size:9px;white-space:nowrap}.save-help{bottom:78px;right:6px}.status{bottom:118px;left:6px;right:6px;font-size:10px;padding:8px}.save-help>div{width:min(340px,calc(100vw - 24px));max-width:calc(100dvh * 9 / 16 - 12px)}}
