.dmcf-shell{position:relative;width:100%}.dmcf-form{background:var(--bg-light-secondary,#fff);border:1px solid var(--border-light,#dde0e7);border-radius:var(--radius-2xl,1.5rem);padding:2.25rem;box-shadow:var(--shadow-light-md,0 8px 24px rgba(0,0,0,.05));width:100%}.dmcf-step{display:none}.dmcf-step.is-active{display:block;animation:dmcfFade .25s ease}.dmcf-step-head{text-align:center;margin:0 auto 1.55rem;max-width:760px}.dmcf-kicker{display:inline-block;margin-bottom:.55rem;color:var(--accent-dark,#0284c7);background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.12);padding:.25rem .75rem;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.dmcf-step-head h3{font-size:1.65rem;margin:0 0 .45rem;color:var(--text-light,#14161c);letter-spacing:-.03em}.dmcf-step-head p{margin:0;color:var(--text-light-secondary,#4e515a);font-size:.98rem;line-height:1.6}.dmcf-service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:1.35rem}.dmcf-service-card{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.05rem;border:1px solid var(--border-light,#dde0e7);border-radius:1.05rem;background:var(--bg-light,#f7f8fb);cursor:pointer;transition:all .22s ease;min-height:164px;overflow:hidden}.dmcf-service-card:hover{border-color:var(--accent,#0ea5e9);transform:translateY(-2px);box-shadow:var(--shadow-light-md,0 8px 24px rgba(0,0,0,.05))}.dmcf-service-card input{position:absolute;opacity:0;pointer-events:none}.dmcf-service-icon{width:42px;height:42px;border-radius:1rem;display:flex!important;align-items:center;justify-content:center;background:rgba(14,165,233,.1);color:var(--accent-dark,#0284c7);font-size:23px!important}.dmcf-service-card strong{font-size:1rem;color:var(--text-light,#14161c);line-height:1.18}.dmcf-service-card small{font-size:.8rem;color:var(--text-light-secondary,#4e515a);line-height:1.42}.dmcf-service-check{position:absolute;top:.85rem;right:.85rem;width:26px;height:26px;border-radius:50%;border:1px solid var(--border-light-hover,#c8ccd6);background:#fff;color:#fff;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.dmcf-service-check .material-symbols-rounded{font-size:17px}.dmcf-service-card:has(input:checked),.dmcf-service-card.is-selected{border-color:var(--accent,#0ea5e9);background:rgba(14,165,233,.06);box-shadow:0 0 0 4px rgba(14,165,233,.08)}.dmcf-service-card:has(input:checked) .dmcf-service-check,.dmcf-service-card.is-selected .dmcf-service-check{background:var(--accent,#0ea5e9);border-color:var(--accent,#0ea5e9)}.dmcf-inline-error{margin:.8rem 0 0;color:#b91c1c;font-size:.86rem;font-weight:600;text-align:center}.dmcf-actions{display:flex;gap:.75rem;align-items:center;justify-content:space-between;margin-top:1.35rem}.dmcf-actions .btn-primary{flex:1}.dmcf-back{background:#fff!important;color:var(--text-light,#14161c)!important;border:1.5px solid var(--border-light-hover,#c8ccd6)!important;box-shadow:none!important;min-width:145px}.dmcf-back:hover{border-color:var(--accent,#0ea5e9)!important;color:var(--accent-dark,#0284c7)!important;transform:translateY(-2px)}.dmcf-back:disabled{opacity:.45;cursor:not-allowed}.dmcf-form input.error,.dmcf-form textarea.error{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.dmcf-field-error{color:#b91c1c;font-size:.78rem;font-weight:600;margin-top:.35rem}.dmcf-step-details{max-width:760px;margin:0 auto}.dmcf-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:1.25rem}.dmcf-modal.is-open{display:flex}.dmcf-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.dmcf-modal-card{position:relative;width:min(520px,100%);background:#fff;border-radius:1.35rem;padding:2.4rem;text-align:center;box-shadow:0 32px 70px rgba(0,0,0,.28);overflow:hidden;animation:dmcfPop .35s ease}.dmcf-success-icon{width:70px;height:70px;margin:0 auto 1rem;border-radius:1.2rem;background:linear-gradient(135deg,#0ea5e9,#06b6d4);color:#fff;display:flex;align-items:center;justify-content:center}.dmcf-success-icon .material-symbols-rounded{font-size:34px}.dmcf-modal-card h3{font-size:1.65rem;letter-spacing:-.03em;margin:0 0 .5rem;color:#111827}.dmcf-modal-card p{color:#4b5563;line-height:1.65;margin:0 0 1.35rem}.dmcf-confetti span{position:absolute;width:8px;height:14px;border-radius:2px;top:20px;left:50%;opacity:0;animation:dmcfConfetti 1.3s ease-out forwards}.dmcf-toast{position:fixed;bottom:24px;right:24px;z-index:100000;background:#111827;color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:.9rem 1.1rem;box-shadow:0 18px 40px rgba(0,0,0,.28);font-size:.9rem;font-weight:600;transform:translateY(20px);opacity:0;transition:all .25s ease}.dmcf-toast.is-visible{transform:translateY(0);opacity:1}.dmcf-toast.is-error{background:#991b1b}@keyframes dmcfFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes dmcfPop{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:none}}@keyframes dmcfConfetti{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(720deg)}}@media(max-width:1100px){.dmcf-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.dmcf-form{padding:1.25rem;border-radius:1.25rem}.dmcf-step-head{text-align:left}.dmcf-service-grid{grid-template-columns:1fr;gap:.65rem}.dmcf-service-card{min-height:auto;padding:.85rem 3rem .85rem .9rem;display:grid;grid-template-columns:38px 1fr;align-items:center}.dmcf-service-card small{display:none}.dmcf-service-icon{width:36px;height:36px;border-radius:.8rem;font-size:20px!important}.dmcf-service-card strong{font-size:.98rem}.dmcf-actions{flex-direction:column}.dmcf-actions .btn,.dmcf-actions .btn-primary,.dmcf-back{width:100%;min-width:0}.dmcf-modal-card{padding:2rem 1.4rem}.dmcf-toast{left:16px;right:16px;bottom:16px}}


/* v1.0.3 refinements */
.dmcf-form{max-width:100%;}
@media(min-width:1180px){.dmcf-form{padding:2.4rem 2.6rem}.dmcf-service-grid{gap:.9rem}.dmcf-service-card{min-height:156px}}
