:root{font-family:Arial,Helvetica,sans-serif;color:#163b44;background:#edf4f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer;border:0;border-radius:12px;background:#096b80;color:white;padding:16px 20px;font-weight:700}button:disabled{opacity:.65;cursor:wait}a{color:#08647a}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #e69c35;outline-offset:4px}[hidden]{display:none!important}.sheet{max-width:510px;padding:40px 26px 28px;margin:0 auto}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#447984}h1{font-size:46px;line-height:1.06;letter-spacing:-2px;margin:22px 0}p{font-size:15px;line-height:1.6;color:#45636c}.mode-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:23px 0}.mode-picker a{text-decoration:none;border:1px solid #bdd2d4;padding:15px;border-radius:12px;font-size:16px;font-weight:700}.mode-picker a[aria-current]{background:#063f4c;color:white;border-color:#063f4c}.mode-picker span{display:block;font-weight:400;font-size:12px;margin-top:7px}.target-thumb{width:100%;height:auto;border-radius:12px;display:block}#start{width:100%;margin-top:6px}#loading{font-size:13px;text-align:center;min-height:22px}.text-link{display:block;text-align:center;font-size:13px;margin:18px 0}.legal{font-size:11px;text-align:center;color:#4a6870;margin-top:28px}#camera{display:block;position:fixed;inset:0;width:100%;height:100%;z-index:-1}body.running{background:#07191e}body.running #camera{z-index:0}#hud{position:fixed;inset:0;z-index:2;pointer-events:none;color:white}#hud header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:max(20px,env(safe-area-inset-top)) 18px 18px;background:linear-gradient(#09232be6,transparent)}#mode-label{font-weight:700;letter-spacing:.5px}.small{font-size:13px;padding:12px 15px;background:#ffffffed;color:#153b47;pointer-events:auto}#hud footer{position:absolute;bottom:0;left:0;right:0;padding:25px 22px max(24px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#06222bee 35%)}.tracking{display:flex;align-items:center;gap:10px}#dot{width:9px;height:9px;border-radius:50%;background:#ffd385}#hud p{color:#e2edef;font-size:13px;margin:8px 0}#guide{position:absolute;left:12%;right:12%;top:29%;height:29%;max-width:600px;margin:auto}#guide i{position:absolute;width:28px;height:28px;border:2px solid #ffffffcc}#guide i:nth-child(1){top:0;left:0;border-right:0;border-bottom:0}#guide i:nth-child(2){top:0;right:0;border-left:0;border-bottom:0}#guide i:nth-child(3){bottom:0;left:0;border-right:0;border-top:0}#guide i:nth-child(4){bottom:0;right:0;border-left:0;border-top:0}details{pointer-events:auto;max-width:400px;margin-top:16px}summary{font-size:12px;cursor:pointer;padding:8px 0}details label{display:flex;justify-content:space-between;font-size:12px;margin-top:8px}input[type=range]{width:100%;accent-color:#60d1df;min-height:36px}.test-sheet{max-width:980px}.test-sheet h1{font-size:38px}.test-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.test-card{background:white;border:1px solid #d1dfdf;border-radius:14px;padding:20px;text-align:center}.qr img{width:170px;height:170px;margin:auto}.test-card a{word-break:break-all}.print-target{width:100%;display:block}.test-sheet .actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0}.test-sheet .actions a{padding:12px}#base-url{width:100%;padding:13px;font:inherit;border:1px solid #adc8cc;border-radius:8px}.notice{border-left:3px solid #cd932d;padding:10px 14px;background:#fff9e9}.test-card h2{font-size:20px}.test-card p{font-size:13px}@media(max-width:480px){.sheet{padding:28px 20px}h1{font-size:40px}.test-grid{grid-template-columns:1fr}}@media print{body{background:white}.no-print{display:none!important}.sheet{max-width:none;padding:0}.print-target{max-width:100%;max-height:95vh;object-fit:contain}}

#video-dialog{width:min(90vw,760px);padding:18px;border:1px solid #398a9d;border-radius:22px;background:#082b35;color:white}#video-dialog::backdrop{background:#00141de8}#video-dialog header{display:flex;align-items:center;justify-content:space-between;gap:15px}#video-dialog h2{font-size:20px}#close-video{width:44px;padding:8px}#panel-video{width:100%;max-height:65vh;background:#000;border-radius:12px}#video-status{font-size:14px}
