/* Base */
.simb-overlay, .simb-modal { box-sizing: border-box; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
body.simb-lock { overflow: hidden; touch-action: none; }

/* Overlay */
.simb-overlay { position: fixed; inset: 0; background: rgba(2,6,23,.6); backdrop-filter: blur(6px); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; z-index: 9998; }
.simb-overlay.active { opacity: 1; visibility: visible; }

/* Modal */
.simb-modal { position: fixed; inset: 0; display: grid; place-items: center; padding: 24px; opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; z-index: 9999; }
.simb-modal.active { opacity: 1; visibility: visible; }
.simb-card { width: 100%; max-width: 720px; max-height: 90vh; background: radial-gradient(1200px 600px at 20% -10%, rgba(99,102,241,.15), transparent 40%), linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.99)); border: 1px solid rgba(226,232,240,.8); border-radius: 20px; box-shadow: 0 24px 80px rgba(2,6,23,.25); overflow: hidden; transform: translateY(6px) scale(.98); opacity: .98; transition: transform .25s ease, opacity .25s ease; }
.simb-modal.active .simb-card { transform: translateY(0) scale(1); opacity: 1; }

/* Header sticky */
.simb-card .simb-header { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; gap: 12px; padding: 16px 20px; background: linear-gradient(180deg, rgba(248,250,252,.98), rgba(248,250,252,.92)); border-bottom: 1px solid #e2e8f0; backdrop-filter: blur(4px); }
.simb-header .simb-close { position: absolute; top: 12px; right: 12px; border: 0; background: transparent; font-size: 28px; cursor: pointer; color: #0f172a; opacity: .6; line-height: 1; }
.simb-header .simb-close:hover { opacity: 1; transform: scale(1.05); }
.simb-icon { width:36px;height:36px;min-width:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#6366f1,#3b82f6);box-shadow:0 6px 16px rgba(59,130,246,.35); }
#simb-title { margin: 0; font-size: 20px; font-weight: 800; color: #0f172a; }
.simb-sub { margin: 0; color: #475569; font-size: 13px; }

/* Body scroll */
.simb-card .simb-body { overflow: auto; max-height: calc(90vh - 64px); padding: 20px 24px 24px; -webkit-overflow-scrolling: touch; }

/* Form */
#simb-form label { display: block; font-weight: 600; color: #0f172a; margin-bottom: 12px; font-size: 14px; }
#simb-form input[type="text"], #simb-form input[type="tel"], #simb-form input[type="date"], #simb-form select, #simb-form textarea, #simb-form input[type="file"] { width: 100%; margin-top: 8px; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 12px; outline: none; background: #fff; transition: border-color .15s ease, box-shadow .15s ease; }
#simb-form input:focus, #simb-form select:focus, #simb-form textarea:focus { border-color: #6366f1; box-shadow: 0 0 0 4px rgba(99,102,241,.15); }
.simb-grid { display: grid; grid-template-columns: 1fr; gap: 12px; } @media (min-width:640px){ .simb-grid{ grid-template-columns: 1fr 1fr; } }

.simb-est { display:flex; justify-content:space-between; align-items:center; background: linear-gradient(90deg, rgba(99,102,241,.08), rgba(99,102,241,.02)); border: 1px dashed #cbd5e1; border-radius: 12px; padding: 12px 14px; margin: 8px 0 16px; font-weight: 700; }
#simb-price { font-size: 18px; color: #111827; }

/* Actions */
.simb-actions { display:flex; gap:14px; padding-top:12px; align-items:center; justify-content:center; }
.simb-actions .simb-btn{ min-width:140px; }
.simb-btn { flex:0 0 auto; appearance:none; border:0; border-radius:12px; padding:12px 18px; cursor:pointer; font-weight:800; font-size:15px; transition: transform .12s ease, box-shadow .12s ease, filter .12s ease, background .12s ease; }
.simb-btn.primary { color:#fff; background: linear-gradient(135deg, #0f172a, #111827); box-shadow: 0 10px 24px rgba(17,24,39,.25), inset 0 0 0 1px rgba(255,255,255,.06); }
.simb-btn.primary:hover { transform: translateY(-1px); box-shadow: 0 14px 28px rgba(17,24,39,.32); filter: brightness(1.03); }
.simb-btn.primary:disabled { opacity:.65; cursor:not-allowed; transform:none; box-shadow:none; }
.simb-btn.secondary { color:#0f172a; background:#fff; box-shadow: 0 1px 0 rgba(15,23,42,.05), inset 0 0 0 1px #cbd5e1; }
.simb-btn.secondary:hover { background:#f8fafc; box-shadow: 0 1px 0 rgba(15,23,42,.08), inset 0 0 0 1px #94a3b8; }

/* Trigger */
.simb-trigger { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:999px; background: linear-gradient(135deg, #111827, #1f2937); color:#fff; text-decoration:none; font-weight:800; transition:.2s; }
.simb-trigger:hover { transform: translateY(-1px); box-shadow:0 10px 24px rgba(17,24,39,.2); }