/* ── Overlay ── */
.omba-overlay{display:none;position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);overflow-y:auto;padding:40px 16px;box-sizing:border-box}
.omba-overlay.is-open{display:flex;align-items:center;justify-content:center;animation:ombaFadeIn .25s ease}
@keyframes ombaFadeIn{from{opacity:0}to{opacity:1}}

/* ── Modal ── */
.omba-modal{position:relative;background:#f5f5f5;border-radius:16px;width:100%;max-width:680px;padding:0 0 0 0;box-shadow:0 24px 80px rgba(0,0,0,.25);animation:ombaSlideUp .3s cubic-bezier(.22,.61,.36,1);overflow:hidden}
@keyframes ombaSlideUp{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}

/* ── Header ── */
.omba-header{background:#fff;text-align:center;padding:36px 40px 28px;border-bottom:1px solid #eee}
.omba-header h2{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:26px;font-weight:700;color:#111;margin:0 0 4px}
.omba-header p{font-size:13.5px;color:#999;margin:0}

/* ── Close ── */
.omba-close{position:absolute;top:16px;right:16px;background:rgba(0,0,0,.1)!important;border:none!important;border-radius:50%;width:40px;height:40px;font-size:24px;line-height:1;cursor:pointer;color:#333!important;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10}
.omba-close:hover{background:rgba(0,0,0,.2)!important;color:#000!important}

/* ── Progress Bar ── */
.omba-progress-wrap{background:#fff;padding:24px 32px 20px;border-bottom:1px solid #eee}
.omba-progress-bar{height:4px;background:#e8e8e8;border-radius:4px;overflow:hidden;margin-bottom:20px}
.omba-progress-fill{height:100%;width:20%;background:#E9B007!important;border-radius:4px;transition:width .4s cubic-bezier(.25,.46,.45,.94)}
.omba-steps-row{display:flex;justify-content:space-between;gap:4px}
.omba-step-dot{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;cursor:default}
.omba-dot{width:32px;height:32px;border-radius:50%;background:#e8e8e8;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#999;transition:all .3s ease}
.omba-dot span{line-height:1}
.omba-step-dot.active .omba-dot{background:#E9B007!important;color:#111!important;box-shadow:0 2px 8px rgba(233,176,7,.3)}
.omba-step-dot.completed .omba-dot{background:#E9B007!important;color:#111!important}
.omba-step-label{font-size:11px;color:#aaa;font-weight:500;transition:color .3s}
.omba-step-dot.active .omba-step-label{color:#111;font-weight:600}
.omba-step-dot.completed .omba-step-label{color:#E9B007}

/* ── Step Panels ── */
.omba-step-panel{display:none;padding:0 0 20px;animation:ombaStepIn .3s ease}
.omba-step-panel.active{display:block}
@keyframes ombaStepIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}

/* ── Sections ── */
.omba-section{background:#fff;border-radius:14px;margin:20px 24px 0;padding:28px 28px 24px;box-shadow:0 1px 4px rgba(0,0,0,.05)}
.omba-section-header h3{font-size:18px;font-weight:700;color:#111;margin:0 0 4px}
.omba-section-header p{font-size:13px;color:#999;margin:0 0 20px}

/* ── Fields ── */
.omba-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.omba-field{display:flex;flex-direction:column;margin-top:16px}
.omba-field-full{margin-top:16px}
.omba-field label,.omba-field-full>label{font-size:12.5px;font-weight:600;color:#222;margin-bottom:7px;letter-spacing:.01em}
.omba-req{color:#c0392b}
.omba-modal input[type="text"],.omba-modal input[type="email"],.omba-modal input[type="tel"],.omba-modal select,.omba-modal textarea{width:100%;padding:11px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;color:#333;background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;font-family:inherit;appearance:none;-webkit-appearance:none}
.omba-modal select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer}
.omba-modal textarea{resize:vertical}
.omba-modal input:focus,.omba-modal select:focus,.omba-modal textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.07)}
.omba-modal input::placeholder,.omba-modal textarea::placeholder{color:#bbb}

/* ── Field error ── */
.omba-modal input.omba-input-error,.omba-modal textarea.omba-input-error{border-color:#e74c3c;box-shadow:0 0 0 3px rgba(231,76,60,.1)}

/* ── Radio ── */
.omba-radio-group{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.omba-radio-label{display:flex;align-items:center;gap:10px;font-size:14px;color:#333;cursor:pointer;font-weight:400!important;margin-bottom:0!important}
.omba-radio-label input[type="radio"]{width:18px;height:18px;accent-color:#111;flex-shrink:0;border:none;box-shadow:none}

/* ── Checkbox ── */
.omba-checkbox-label{display:flex;align-items:center;gap:10px;font-size:14px;color:#333;cursor:pointer;margin-bottom:20px}
.omba-checkbox-label input[type="checkbox"]{width:18px;height:18px;accent-color:#111;flex-shrink:0;padding:0;border:none;box-shadow:none}
.omba-checkbox-label a{color:#3a6fd8;text-decoration:underline}

/* ── Error msg ── */
.omba-error-msg{background:#fff0f0;border:1px solid #f5c6cb;color:#c0392b;border-radius:8px;padding:10px 14px;font-size:13.5px;margin-bottom:16px}

/* ── Navigation ── */
.omba-nav-buttons{display:flex;justify-content:space-between;align-items:center;padding:16px 24px 28px;gap:12px}
.omba-btn-back,.omba-btn-next{display:inline-flex;align-items:center;gap:6px;border:none!important;border-radius:10px;padding:13px 28px;font-size:14.5px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}
.omba-btn-back{background:#e8e8e8!important;color:#333!important}
.omba-btn-back:hover{background:#ddd!important}
.omba-btn-next{background:#E9B007!important;color:#fff!important;margin-left:auto}
.omba-btn-next:hover{background:#d0a006!important}
.omba-btn-next:active,.omba-btn-back:active{transform:scale(.98)}

/* ── Submit btn ── */
.omba-submit-btn{width:100%;background:#E9B007!important;color:#fff!important;border:none!important;border-radius:10px;padding:16px;font-size:15px;font-weight:600;cursor:pointer;letter-spacing:.02em;transition:background .2s,transform .1s;font-family:inherit}
.omba-submit-btn:hover{background:#d0a006!important}
.omba-submit-btn:active{transform:scale(.99)}
.omba-submit-btn:disabled{opacity:.6;cursor:not-allowed}
.omba-footer-note{text-align:center;font-size:12px;color:#999;margin:16px 0 0;line-height:1.6}

/* ── Summary (Step 5 preview) ── */
.omba-summary{background:#f9f9f9;border-radius:10px;padding:20px;margin-bottom:20px;border:1px solid #eee}
.omba-summary-group{margin-bottom:16px}
.omba-summary-group:last-child{margin-bottom:0}
.omba-summary-group h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid #e8e8e8}
.omba-summary-row{display:flex;justify-content:space-between;padding:4px 0;font-size:13.5px}
.omba-summary-row .omba-s-label{color:#888;flex-shrink:0}
.omba-summary-row .omba-s-value{color:#222;font-weight:500;text-align:right;max-width:60%;word-break:break-word}

/* ── Success ── */
.omba-success{text-align:center;padding:60px 40px}
.omba-success-icon{width:64px;height:64px;background:#27ae60;color:#fff;border-radius:50%;font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.omba-success h3{font-size:24px;color:#111;margin:0 0 12px}
.omba-success p{color:#555;margin:0 0 8px}
.omba-success-sub{font-size:13px;color:#999}
.omba-btn-close-success{margin-top:28px;padding:12px 32px;background:#E9B007!important;color:#fff!important;border:none!important;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}
.omba-btn-close-success:hover{background:#d0a006!important}

/* ── Responsive ── */
@media(max-width:600px){
    .omba-overlay{padding:0;align-items:flex-end}
    .omba-modal{border-radius:20px 20px 0 0;max-width:100%}
    .omba-section{margin:12px 12px 0;padding:20px 18px 16px}
    .omba-row{grid-template-columns:1fr}
    .omba-header{padding:24px 20px 18px}
    .omba-progress-wrap{padding:16px 16px 14px}
    .omba-nav-buttons{padding:12px 16px 24px}
    .omba-step-label{font-size:9px}
    .omba-dot{width:28px;height:28px;font-size:12px}
}
