.capture-step{transition:border-color .2s,background .2s,opacity .2s}
.capture-step.is-current{border-color:#151515;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.capture-step.is-accepted{border-color:#86a98d;background:#f5faf6}
.capture-step.is-locked{opacity:.48}
.capture-step.is-checking{border-color:#bca46c;background:#fffaf0}
.capture-step.is-rejected{border-color:#b95858;background:#fff7f7}
.capture-step small.upload-feedback{display:block;margin-top:5px;line-height:1.4;color:#5b5b5b}
.capture-step strong{font-size:17px;line-height:1.35}.capture-step small.upload-feedback{font-size:15px}
.upload-zone #sequentialUploadTitle{font-size:clamp(25px,4vw,34px);line-height:1.18}.upload-zone #sequentialUploadHint{font-size:16px;line-height:1.5}
.capture-step.is-rejected small.upload-feedback{color:#9b3333}
.capture-step.is-accepted small.upload-feedback{color:#397245}
.upload-zone.is-busy{pointer-events:none;opacity:.65}
.upload-zone.is-busy{opacity:1}.upload-zone.is-busy>.upload-symbol,.upload-zone.is-busy>#sequentialUploadTitle,.upload-zone.is-busy>#sequentialUploadHint,.upload-zone.is-busy>.upload-button{display:none}
.upload-progress-panel{display:none;width:min(430px,92%);margin:4px auto;text-align:center;position:relative;z-index:2}
.upload-zone.is-busy .upload-progress-panel{display:grid;justify-items:center;gap:10px}
.upload-progress-spinner{width:52px;height:52px;border:4px solid rgba(15,15,15,.13);border-top-color:#b49a60;border-radius:50%;animation:authentino-spin .8s linear infinite}
.upload-progress-panel strong{font:700 22px/1.25 inherit;color:#171717}.upload-progress-panel small{font:400 16px/1.45 inherit;color:#616161}
.upload-progress-track{display:block;width:100%;height:8px;overflow:hidden;border-radius:99px;background:#ddd8ce;margin-top:4px}.upload-progress-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#171717,#b49a60);border-radius:inherit;transition:width .3s ease}
.upload-progress-panel b{font:700 18px/1 inherit;color:#171717}@keyframes authentino-spin{to{transform:rotate(360deg)}}
.upload-zone.is-complete{pointer-events:none;border-color:#86a98d;background:#f5faf6}
.upload-errors{display:none}
.upload-errors.rejected,.upload-errors.technical,.upload-errors.success{display:flex;gap:16px;align-items:flex-start;margin:22px 0;padding:20px;border:2px solid;border-radius:14px;box-shadow:0 12px 30px rgba(0,0,0,.10);font-size:17px;line-height:1.5}
.upload-errors.rejected{color:#7d1717;background:#fff0f0;border-color:#d74646}
.upload-errors.technical{color:#76520d;background:#fff8e3;border-color:#d4a22f}
.upload-errors.success{color:#246137;background:#effaf2;border-color:#6ca67a}
.upload-alert-icon{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:currentColor;color:#fff;font-weight:900;font-size:22px;line-height:1}
.upload-alert-content{min-width:0;flex:1}.upload-alert-content strong{display:block;margin:0 0 6px;font-size:20px;line-height:1.25}.upload-alert-content p{margin:0;font-size:17px;line-height:1.55;color:inherit}
.upload-retry-button{margin-top:15px;min-height:46px;padding:11px 18px;border:0;border-radius:9px;background:#171717;color:#fff;font:700 15px/1.2 inherit;cursor:pointer}
.upload-retry-button:focus-visible{outline:3px solid #b89d62;outline-offset:3px}
@media(max-width:640px){.capture-step{padding:16px 13px}.capture-step strong{font-size:17px}.capture-step small.upload-feedback{font-size:15px}.upload-zone #sequentialUploadTitle{font-size:27px}.upload-zone #sequentialUploadHint{font-size:16px}.upload-errors.rejected,.upload-errors.technical,.upload-errors.success{margin:18px -4px;padding:19px 15px;gap:12px;border-radius:12px;font-size:17px}.upload-alert-icon{flex-basis:32px;width:32px;height:32px;font-size:20px}.upload-alert-content strong{font-size:21px}.upload-alert-content p{font-size:18px;line-height:1.5}.upload-retry-button{width:100%;min-height:52px;font-size:17px}}
@media(max-width:640px){.upload-progress-panel{width:94%;gap:12px}.upload-progress-spinner{width:58px;height:58px}.upload-progress-panel strong{font-size:23px}.upload-progress-panel small{font-size:17px}.upload-progress-track{height:10px}.upload-progress-panel b{font-size:20px}}
.payment-logo-row{display:flex!important;flex-wrap:wrap;gap:8px!important;align-items:center}
.pay-logo{height:32px;min-width:58px;padding:0 10px;border:1px solid rgba(255,255,255,.28);border-radius:7px;display:inline-flex!important;align-items:center;justify-content:center;background:#fff;color:#10151f;font:700 14px/1 Arial,sans-serif;letter-spacing:0!important;box-sizing:border-box}
.visa-logo{color:#1434cb;font-style:italic;font-size:17px}.stripe-logo{color:#635bff;font-size:15px}
.paypal-logo{color:#003087;gap:4px}.paypal-logo b{color:#0070e0;font-style:italic;font-size:18px}
.applepay-logo{font-size:16px;letter-spacing:-1px!important}.gpay-logo{font-weight:500}.gpay-logo b{color:#4285f4;font-size:17px}
.mastercard-logo{position:relative;min-width:58px}.mastercard-logo i{width:20px;height:20px;border-radius:50%;display:block;background:#eb001b}.mastercard-logo i+i{background:#f79e1b;margin-left:-7px;mix-blend-mode:multiply}

/* AUTHENTINO v5.8.0 — mobile live capture */
.capture-source{margin:0 0 26px;padding:24px;border:1px solid #d9d1c2;border-radius:22px;background:linear-gradient(145deg,#fdfbf7,#f2ede3);box-shadow:0 14px 38px rgba(32,28,21,.06)}
.capture-source-head small{display:block;margin-bottom:8px;color:#9a7b3e;font:700 12px/1.2 inherit;letter-spacing:.2em}
.capture-source-head h3{margin:0;color:#171713;font:600 clamp(22px,2.45vw,29px)/1.16 Georgia,serif}
.capture-source-head p{margin:10px 0 0;color:#686158;font-size:16px;line-height:1.5}
.capture-source-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:21px}
.capture-source-card{position:relative;display:grid;grid-template-columns:52px 1fr 24px;grid-template-rows:auto auto;column-gap:14px;align-items:center;min-width:0;min-height:116px;padding:18px;text-align:left;border:1px solid #d8d0c3;border-radius:16px;background:rgba(255,255,255,.76);color:#171713;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}
.capture-source-card:hover{transform:translateY(-2px);border-color:#b4975b;box-shadow:0 12px 28px rgba(43,35,22,.09)}
.capture-source-card:focus-visible{outline:3px solid #b4975b;outline-offset:3px}
.capture-source-card:disabled{cursor:not-allowed;opacity:.46;transform:none;box-shadow:none}
.capture-source-card strong{grid-column:2;font-size:17px;line-height:1.25}
.capture-source-card small{grid-column:2;color:#706a61;font-size:14px;line-height:1.4}
.capture-source-card>i{grid-column:3;grid-row:1/3;font-style:normal;font-size:24px;color:#a58548}
.source-icon{grid-column:1;grid-row:1/3;width:50px;height:50px;border-radius:50%;background:#171713;position:relative}
.source-camera-icon:before{content:"";position:absolute;left:12px;top:17px;width:26px;height:18px;border:2px solid #d3b36e;border-radius:5px;box-sizing:border-box}
.source-camera-icon:after{content:"";position:absolute;left:21px;top:21px;width:8px;height:8px;border:2px solid #d3b36e;border-radius:50%;box-sizing:border-box}
.source-gallery-icon:before{content:"";position:absolute;left:12px;top:13px;width:26px;height:24px;border:2px solid #d3b36e;border-radius:4px;box-sizing:border-box}
.source-gallery-icon:after{content:"";position:absolute;left:16px;top:22px;width:18px;height:11px;background:linear-gradient(135deg,transparent 47%,#d3b36e 48% 56%,transparent 57%),linear-gradient(45deg,transparent 46%,#d3b36e 47% 55%,transparent 56%)}
.capture-source-note{margin:16px 2px 0!important;color:#777067!important;font-size:13px!important;line-height:1.5!important}
.live-camera{margin:0 0 26px;overflow:hidden;border-radius:24px;background:#11110f;color:#f7f1e7;box-shadow:0 22px 50px rgba(0,0,0,.22)}
.live-camera[hidden]{display:none!important}
.live-camera:focus-visible{outline:3px solid #c6a762;outline-offset:3px}
.live-camera-top{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;padding:14px 16px}
.live-camera-top>button{width:44px;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font:400 29px/1 inherit;cursor:pointer}
.live-camera-top>button:last-child{font-size:25px}
.live-camera-top div{text-align:center}.live-camera-top small{display:block;color:#c6a762;font:700 10px/1.2 inherit;letter-spacing:.16em}.live-camera-top strong{display:block;margin-top:4px;font-size:14px}
.live-camera-viewport{position:relative;aspect-ratio:4/3;max-height:68vh;background:#050505;overflow:hidden}
.live-camera-viewport video{display:block;width:100%;height:100%;object-fit:cover}
.live-camera-frame{position:absolute;inset:9% 8%;pointer-events:none}
.live-camera-frame i{position:absolute;width:58px;height:58px;border-color:#f2e6cf;border-style:solid}
.live-camera-frame i:nth-child(1){left:0;top:0;border-width:4px 0 0 4px;border-radius:16px 0 0}
.live-camera-frame i:nth-child(2){right:0;top:0;border-width:4px 4px 0 0;border-radius:0 16px 0 0}
.live-camera-frame i:nth-child(3){right:0;bottom:0;border-width:0 4px 4px 0;border-radius:0 0 16px}
.live-camera-frame i:nth-child(4){left:0;bottom:0;border-width:0 0 4px 4px;border-radius:0 0 0 16px}
.live-camera-wait{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:rgba(8,8,7,.72);backdrop-filter:blur(5px);z-index:3}.live-camera-wait[hidden]{display:none}.live-camera-wait strong{font-size:19px}
.live-camera-guide{padding:19px 24px 12px;text-align:center}.live-camera-guide small{display:block;color:#c6a762;font:700 11px/1.2 inherit;letter-spacing:.18em}.live-camera-guide strong{display:block;margin-top:6px;font:500 clamp(22px,3vw,30px)/1.2 Georgia,serif}.live-camera-guide p{margin:8px 0 0;color:#aaa399;font-size:14px;line-height:1.45}
.live-camera-actions{display:grid;grid-template-columns:1fr 92px 1fr;align-items:center;padding:10px 22px 24px}
.camera-gallery-button{justify-self:start;display:grid;justify-items:center;gap:4px;border:0;background:transparent;color:#f5efe5;cursor:pointer}.camera-gallery-button span{font-size:29px}.camera-gallery-button b{font-size:12px}
.camera-shutter{width:82px;height:82px;padding:7px;border:3px solid #eee4d1;border-radius:50%;background:transparent;cursor:pointer}.camera-shutter i{display:block;width:100%;height:100%;border-radius:50%;background:#f5efe4;transition:transform .15s,background .15s}.camera-shutter:active i{transform:scale(.91);background:#d0af68}.camera-shutter:disabled{opacity:.45;cursor:wait}
.live-camera button:focus-visible{outline:3px solid #d5b66f;outline-offset:3px}
.wizard-panel.is-locked button,.wizard-panel.is-locked input,.wizard-panel.is-locked select,.wizard-panel.is-locked label{pointer-events:none}
.camera-action-spacer{display:block}
@media(max-width:700px){
  .capture-source{margin-left:-4px;margin-right:-4px;padding:19px 14px;border-radius:18px}
  .capture-source-options{grid-template-columns:1fr;gap:11px}
  .capture-source-card{min-height:104px;padding:15px;grid-template-columns:48px 1fr 20px}
  .capture-source-card strong{font-size:18px}.capture-source-card small{font-size:15px}
  .source-icon{width:46px;height:46px}
  .live-camera{margin-left:-10px;margin-right:-10px;border-radius:19px}
  .live-camera-viewport{aspect-ratio:3/4;max-height:64vh}
  .live-camera-guide{padding-left:16px;padding-right:16px}
}
@media(max-width:380px){.live-camera-actions{grid-template-columns:1fr 78px 1fr;padding-left:14px;padding-right:14px}.camera-shutter{width:72px;height:72px}}
