.photo-step{max-width:680px;padding-bottom:64px}.photo-view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-top:22px}.photo-view-card{min-width:0}.photo-view-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;font-weight:650;color:var(--ink)}.photo-view-title span{color:var(--soft);font-size:.72rem;font-weight:500}.photo-view-card .photo-upload-panel{padding:12px;margin:10px 0 0;border-radius:18px}.photo-view-card .photo-empty{min-height:210px;padding:12px;overflow-wrap:anywhere}.photo-view-card .photo-empty p{margin:0}.photo-view-card .photo-preview{height:210px;object-fit:contain}.photo-view-card .photo-file-label{margin:12px 0 8px;font-size:.84rem}.photo-combine-note{text-align:center;color:var(--soft);font-size:.84rem}.photo-back{padding:16px 0 24px;font:inherit;font-size:.86rem}.photo-back,.photo-skip{background:none;border:0;color:var(--soft);cursor:pointer}.photo-skip{display:block;margin:18px auto 0;padding:10px 15px;text-decoration:underline;font:inherit;font-size:.88rem}.photo-step h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.3rem,5vw,3.5rem)}.photo-step h1 em{color:var(--accent);font-weight:400}.photo-upload-panel{border:1px solid var(--line);border-radius:24px;padding:22px;background:var(--card);margin:24px 0;text-align:center}.photo-upload-panel.is-dragging{border-color:var(--accent);background:#fff2f7;box-shadow:0 0 0 3px #b04a6e20}.photo-empty{min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;background:var(--bg);border-radius:16px}.photo-empty>span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#f5dce5;color:var(--accent-dark);font-size:1.8rem;margin-bottom:8px}.photo-empty p,.photo-file-hint{color:var(--soft);font-size:.8rem}.photo-preview{width:100%;max-height:320px;display:block;object-fit:contain;border-radius:16px;background:var(--bg)}.photo-file-label{display:block;margin:18px 0 10px;font-weight:600;color:var(--accent-dark)}.photo-upload-panel input{max-width:100%;font:inherit;font-size:.86rem}.photo-upload-panel input::-webkit-file-upload-button{border:1px solid var(--line);border-radius:9px;padding:9px 13px;background:var(--bg);color:var(--ink);margin-right:10px;cursor:pointer}.photo-upload-panel input::file-selector-button{border:1px solid var(--line);border-radius:9px;padding:9px 13px;background:var(--bg);color:var(--ink);margin-right:10px;cursor:pointer}.photo-file-hint{margin-top:12px}.photo-consent{display:flex;text-align:left}.photo-consent input{flex-shrink:0;accent-color:var(--accent);width:18px;height:18px}.photo-consent a{color:var(--accent-dark)}.photo-ai-consent{font-size:.75rem;line-height:1.45}.photo-transparency{margin-top:16px;font-size:.77rem;color:var(--soft);line-height:1.6}.photo-step a:focus-visible,.photo-step button:focus-visible,.photo-step input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:600px){.photo-view-grid{gap:10px}.photo-view-title{font-size:.88rem}.photo-view-card .photo-upload-panel{padding:8px;margin-top:8px;border-radius:14px}.photo-view-card .photo-empty{min-height:160px;padding:8px}.photo-view-card .photo-empty>span{width:42px;height:42px;font-size:1.4rem}.photo-view-card .photo-empty strong{font-size:.76rem}.photo-view-card .photo-empty p{font-size:.7rem}.photo-view-card .photo-preview{height:160px}.photo-view-card .photo-file-label{min-height:38px;display:flex;align-items:center;justify-content:center;font-size:.72rem;line-height:1.2}.photo-view-card .photo-upload-panel input{width:100%;font-size:.66rem}.photo-view-card .photo-upload-panel input::-webkit-file-upload-button{padding:6px;margin:0 4px 0 0}.photo-view-card .photo-upload-panel input::file-selector-button{padding:6px;margin:0 4px 0 0}}@media(max-width:360px){.photo-view-grid{grid-template-columns:1fr;gap:2px}}.safety-step{max-width:720px}.safety-back,.safety-skip{border:0;background:none;color:var(--soft);font:inherit;font-size:.88rem;cursor:pointer;padding:14px 0}.safety-skip{display:block;margin:10px auto;text-decoration:underline}.safety-step h1{font-family:Georgia,serif;font-size:clamp(2.3rem,5vw,3.4rem);font-weight:400}.safety-step h1 em{color:var(--accent);font-weight:400}.safety-info{background:var(--card);padding:24px;border:1px solid var(--line);border-radius:20px;margin:24px 0}.safety-info h2{font-size:1.2rem}.safety-info p{font-size:.89rem;color:var(--soft);margin-top:12px}.safety-consent{display:flex;margin:16px 0;font-size:.75rem;line-height:1.45;color:var(--soft)}.safety-consent input{flex:0 0 auto;width:16px;height:16px;margin-top:1px}.safety-consent a{color:var(--accent-dark);white-space:nowrap}.safety-step fieldset{border:0;padding:0}.safety-step legend{font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.15rem);line-height:1.3;margin-bottom:18px}.safety-step fieldset .option{display:flex;gap:12px;align-items:center;margin-top:10px;cursor:pointer}.safety-step input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}.safety-step .selected{border-color:var(--accent);background:#fff0f5}.safety-step button:focus-visible,.safety-step input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.safety-step fieldset textarea{display:block;width:100%;min-height:110px;resize:vertical;margin-top:8px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:14px}.safety-step .pain-details-label{display:block;margin-top:15px;font-size:13px;font-weight:600}.safety-step .btn.primary{margin-top:25px;margin-bottom:10px}.safety-step{padding-bottom:44px}@media(max-width:600px){.safety-step .btn.primary{margin-top:30px}.safety-step{padding-bottom:35px}}