:root{font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#172c3c;background:#f2f6f8}*{box-sizing:border-box}body{margin:0}header{background:#123248;color:#fff;padding:17px 18px}.header-inner{max-width:900px;margin:auto;display:flex;align-items:center;justify-content:space-between}.logo{font-weight:800;letter-spacing:.06em}.logo span{color:#6ee5d0}.sublogo{font-size:12px;opacity:.85}main{max-width:900px;margin:auto;padding:24px 16px 50px}.intro h1{font-size:clamp(22px,5vw,30px);margin:0 0 6px}.intro p{margin:0 0 17px;color:#526677}.privacy{padding:12px 14px;margin-bottom:18px;border:1px solid #b4dad2;background:#e6f5f1;color:#20574b;border-radius:10px;font-size:13px}.panel{background:#fff;padding:20px;border-radius:15px;box-shadow:0 3px 18px #19374e10;margin:0 0 18px}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.heading-row h2{font-size:18px;margin:0}.step{font-size:12px;color:#166b75;background:#e8f3f4;padding:6px 10px;border-radius:100px}.camera-stage{position:relative;background:#16242d;width:min(100%,390px);aspect-ratio:3/4;margin:0 auto;overflow:hidden;border-radius:10px;display:flex;align-items:center;justify-content:center}.camera-stage video{width:100%;height:100%;object-fit:cover;display:block}.camera-stage canvas{position:absolute;pointer-events:none}.camera-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#e8eef1;font-weight:600;padding:20px;background:#16242d}.camera-placeholder small{font-weight:400;color:#acbbc2;font-size:12px}.camera-placeholder[hidden]{display:none}.settings{display:flex;flex-wrap:wrap;gap:10px 25px;margin:16px 0}.toggle{font-size:13px;display:flex;align-items:center;gap:6px}.toggle input{width:19px;height:19px;accent-color:#157c7c}.controls,.export-section{display:flex;flex-wrap:wrap;gap:9px}.btn{font:inherit;font-size:14px;font-weight:700;padding:11px 16px;border:1px solid transparent;border-radius:9px;cursor:pointer}.btn:disabled{opacity:.38;cursor:not-allowed}.btn.primary{background:#087d83;color:#fff}.btn.secondary{background:#eaf3f6;border-color:#ccdfe5;color:#174e63}.btn.subtle{background:#f2f4f6;color:#30495b}.btn.danger{background:#fff1ef;color:#9e3834;border-color:#f1cdcb}.btn.small{padding:8px 10px;font-size:12px}.file-choice{margin-top:14px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.file-btn{font-size:13px;color:#086574;text-decoration:underline;cursor:pointer;font-weight:700}.file-choice input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.file-choice small,.help{color:#657685;font-size:12px}.tips{margin-top:14px;padding:10px 12px;background:#f7f9fa;border-left:3px solid #86b6bc;font-size:12px;color:#4a6474}.comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.shot{min-width:0}.shot-title{font-weight:800;background:#e9f1f5;color:#25556c;text-align:center;padding:9px;border-radius:8px 8px 0 0;letter-spacing:.06em}.shot-title.after{background:#dff2ea;color:#246749}.shot-body{min-height:170px;aspect-ratio:3/4;background:#f2f5f6;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:9px}.shot-body img{width:100%;height:100%;object-fit:contain}.shot-body img[hidden]{display:none}.shot-body span{font-size:12px;color:#82909a;text-align:center;padding:10px}.export-section{margin-top:18px}.help{line-height:1.6;margin-bottom:0}.status{padding:12px 14px;border-radius:9px;background:#e5eff9;color:#1e4e75;font-size:13px}.status.error{background:#fff0ec;color:#9c3832}.disclaimer{color:#687884;font-size:12px;line-height:1.7;margin-top:18px}@media(max-width:500px){.panel{padding:14px}.btn{flex-grow:1}.camera-stage{width:min(100%,340px)}.shot-body{min-height:140px}.controls .btn{min-width:40%}}
