*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#070b14;color:#e6ebf4;min-height:100vh}.photo-app{max-width:640px;margin:0 auto;padding:0 16px 40px;display:flex;flex-direction:column;min-height:100vh}.photo-head{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.photo-brand{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:800;color:#e6ebf4;text-decoration:none}.photo-brand span{color:#5aa2ff}.photo-badges{font-size:11px;color:#7f8ba3;letter-spacing:.4px}.photo-main{flex:1}.photo-pick h1{font-size:28px;margin:8px 0 6px}.photo-sub{color:#9aa7bd;font-size:14px;line-height:1.5;margin:0 0 18px}.photo-preset-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.photo-preset{background:#0e1626;border:1px solid #1e2c45;border-radius:10px;color:#cfd8e8;padding:10px 12px;font-size:13px;font-weight:600;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px}.photo-preset em{font-style:normal;font-weight:400;font-size:11px;color:#7f8ba3}.photo-preset.on{border-color:#5aa2ff;background:#12203a;color:#fff}.photo-pick-actions{display:flex;gap:10px;flex-wrap:wrap}.photo-btn{display:inline-flex;align-items:center;gap:7px;background:#16223a;color:#e6ebf4;border:1px solid #2a3a58;border-radius:10px;padding:11px 18px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none}.photo-btn:hover{background:#1c2c4a}.photo-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.photo-btn.primary:hover{background:#1d4ed8}.photo-btn.ghost{background:transparent}.photo-btn.big{width:100%;justify-content:center;padding:14px;font-size:15px}.photo-btn:disabled{opacity:.6;cursor:wait}.photo-tips{margin:22px 0 0;padding-left:18px;color:#8b98b0;font-size:13px;line-height:1.7}.photo-edit{display:flex;flex-direction:column;gap:14px}.photo-edit-top{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.photo-sel{background:#0e1626;color:#e6ebf4;border:1px solid #2a3a58;border-radius:8px;padding:9px 10px;font-size:13px;max-width:320px}.photo-cropwrap{display:flex;flex-direction:column;align-items:center;gap:8px}.photo-crop{position:relative;overflow:hidden;border-radius:8px;border:2px solid #5aa2ff;touch-action:none;cursor:grab;background:#0a0f1a}.photo-crop:active{cursor:grabbing}.photo-crop img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.photo-guide{position:absolute;right:0;bottom:0;pointer-events:none;border:1px dashed rgba(255,255,255,.35);border-radius:50% 50% 46% 46%;width:46%;height:62%;left:27%;top:12%}.photo-headmeter{font-size:13px;margin:0}.photo-headmeter.ok{color:#4ade80}.photo-headmeter.warn{color:#fbbf24}.photo-zoom{display:flex;align-items:center;gap:12px;font-size:13px;color:#9aa7bd}.photo-zoom input{flex:1;accent-color:#5aa2ff}.photo-check{display:flex;align-items:center;gap:8px;font-size:13.5px;color:#cfd8e8}.photo-check input{accent-color:#2563eb;width:16px;height:16px}.photo-result{display:flex;flex-direction:column;gap:14px}.photo-result-imgs{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.photo-result-imgs figure{margin:0;text-align:center;max-width:100%}.photo-result-imgs img{border-radius:6px;background:#fff;max-height:220px;max-width:min(160px,100%);box-shadow:0 2px 12px #0006}.photo-result-imgs figure:last-child img{max-width:min(300px,92vw)}.photo-result-imgs figcaption{font-size:11px;color:#7f8ba3;margin-top:6px}.photo-error{color:#f87171;font-size:13px}.photo-cam-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.photo-cam{max-width:560px;width:100%;display:flex;flex-direction:column;gap:10px}.photo-cam video{width:100%;border-radius:10px;background:#000}.photo-cam-btns{display:flex;gap:8px;justify-content:center}.photo-cam-tip{font-size:12px;color:#8b98b0;text-align:center;margin:0}.photo-foot{margin-top:36px;padding-top:18px;border-top:1px solid #182236}.photo-foot p{font-size:12px;color:#7f8ba3;line-height:1.6;margin:0 0 10px}.photo-foot a{color:#5aa2ff}@media (max-width: 480px){.photo-preset-row{grid-template-columns:1fr}}
