.dfm-form{--dfm-accent:#16759c;--dfm-ink:#17384d;--dfm-line:#cbd9e0;max-width:960px;margin:24px auto;padding:clamp(18px,4vw,38px);border:1px solid var(--dfm-line);border-radius:12px;background:#fff;box-shadow:0 5px 24px rgba(23,56,77,.08);color:#243741;white-space:normal}
.dfm-form *{box-sizing:border-box}
.dfm-form h2,.dfm-form h3,.dfm-form legend{color:var(--dfm-ink)}
.dfm-form .row{display:flex;flex-wrap:wrap;margin-right:-.75rem;margin-left:-.75rem}
.dfm-form .g-3{row-gap:1rem}
.dfm-form .row>*{width:100%;padding-right:.75rem;padding-left:.75rem}
.dfm-form .col-12{width:100%}
.dfm-form .dfm-field-group-section{display:block;margin:22px 0;padding:20px;border:1px solid var(--dfm-line);border-radius:.5rem;background:#fff}
.dfm-form .dfm-field-group-section>legend{float:none;width:auto;margin:0;padding:0 9px;font-size:20px;font-weight:700}
.dfm-form .form-label{display:inline-block;margin-bottom:.5rem;font-weight:600}
.dfm-form .form-control,.dfm-form .form-select{display:block;width:100%;min-height:46px;padding:.6rem .75rem;border:1px solid var(--dfm-line);border-radius:.375rem;background-color:#fff;color:inherit}
.dfm-form .form-control:focus,.dfm-form .form-select:focus{border-color:var(--dfm-accent);outline:0;box-shadow:0 0 0 .2rem rgba(22,117,156,.18)}
.dfm-form textarea.form-control{min-height:110px;resize:vertical}
.dfm-form .form-check{display:flex;align-items:flex-start;gap:.55rem;min-height:1.5rem;padding-left:0;margin-bottom:.5rem}
.dfm-form .form-check .form-check-input{display:inline-block!important;flex:0 0 auto;float:none!important;width:1rem!important;height:1rem!important;min-height:0!important;margin:.2rem 0 0!important;padding:0!important;border:1px solid var(--dfm-line);background-color:#fff}
.dfm-form .form-check input[type=radio].form-check-input{border-radius:50%}
.dfm-form .form-check input[type=checkbox].form-check-input{border-radius:.2rem}
.dfm-form .form-check .form-check-label{display:inline!important;flex:1;margin:0!important;font-size:inherit!important;font-weight:400;line-height:1.45}
.dfm-form .d-flex{display:flex}
.dfm-form .flex-wrap{flex-wrap:wrap}
.dfm-form .gap-3{gap:1rem}
.dfm-form .mb-3{margin-bottom:1rem}
.dfm-form .mb-4{margin-bottom:1.5rem}
.dfm-form .mt-3{margin-top:1rem}
.dfm-form .mt-4{margin-top:1.5rem}
.dfm-form .pt-3{padding-top:1rem}
.dfm-form .px-0{padding-right:0;padding-left:0}
.dfm-form .dfm-signature{border-top:2px solid var(--dfm-line)}
.dfm-form .dfm-canvas{display:block;width:100%;height:180px;border:1px solid var(--dfm-line);border-radius:.375rem;touch-action:none;background:#fff}
.dfm-form .img-fluid{max-width:100%;height:auto}
.dfm-form .dfm-display-image{display:block}
.dfm-form .dfm-display-image-wrap{overflow:hidden}
.dfm-form .dfm-teeth-field{display:block;border:0;padding:0;margin:0;overflow-x:auto}
.dfm-form .dfm-teeth-help{margin:0 0 .75rem;color:#52636d}
.dfm-form .dfm-teeth-chart{position:relative;width:100%;min-width:720px;max-width:900px;margin:0 auto}
.dfm-form .dfm-teeth-chart img{display:block;width:100%;height:auto}
.dfm-form .dfm-tooth{position:absolute;z-index:2;transform:translate(-50%,-50%);width:34px!important;height:34px!important;min-height:0!important;margin:0!important;padding:0!important;border:2px solid transparent!important;border-radius:50%;background:transparent!important;cursor:pointer}
.dfm-form .dfm-tooth:hover,.dfm-form .dfm-tooth:focus-visible{border-color:var(--dfm-accent)!important;background:rgba(22,117,156,.12)!important;outline:0}
.dfm-form .dfm-tooth.is-selected{border-color:#c42727!important;background:rgba(196,39,39,.2)!important;box-shadow:0 0 0 2px #fff inset}
.dfm-form .dfm-selected-teeth{margin-top:.75rem;padding:.6rem .75rem;border-radius:.375rem;background:#f0f5f7;font-weight:600}
.dfm-form .btn{display:inline-block;padding:.6rem 1rem;border:1px solid transparent;border-radius:.375rem;background:transparent;color:inherit;text-align:center;cursor:pointer}
.dfm-form .btn-primary{background:var(--dfm-accent);border-color:var(--dfm-accent);color:#fff;font-weight:700}
.dfm-form .btn-primary:hover,.dfm-form .btn-primary:focus{filter:brightness(.9)}
.dfm-form .btn-link{border:0;color:var(--dfm-accent);text-decoration:underline}
.dfm-form .btn:disabled{opacity:.55}
.dfm-form .alert{padding:.75rem 1rem;border:1px solid transparent;border-radius:.375rem}
.dfm-form .alert-info{color:#055160;background:#cff4fc;border-color:#b6effb}
.dfm-form .alert-success{color:#0f5132;background:#d1e7dd;border-color:#badbcc}
.dfm-form .alert-danger{color:#842029;background:#f8d7da;border-color:#f5c2c7}
.dfm-trap{position:absolute!important;left:-10000px!important}
.is-hidden{display:none!important}
@media(min-width:768px){.dfm-form .col-md-6{width:50%}}
@media(max-width:650px){.dfm-form{margin:10px auto;padding:16px;border-radius:6px}.dfm-form .dfm-field-group-section{padding:14px}}
