/* DentalFrame · acabado de perfiles y liquidaciones demostrativas */
.df-prof-panel{background:#fffdf9;border:1px solid #e1e4df;border-radius:16px;padding:24px;margin:22px 0;box-shadow:0 12px 28px #233d3010}
.df-prof-panel h2{margin:0 0 10px;font-size:21px;color:#243b37}
.df-prof-panel h3{margin:0 0 16px;font-size:17px}
.df-prof-panel p{line-height:1.45}
.df-prof-avatar{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;overflow:hidden;flex:0 0 auto;border-radius:50%;background:#d8e8dd;color:#2d5b49;font-size:20px;font-weight:700;vertical-align:middle}
.df-prof-avatar img{width:100%;height:100%;object-fit:cover}
.df-prof-small{height:36px;width:36px;font-size:12px;margin-right:10px}
.df-doc-chip{display:flex;gap:5px;align-items:center}
.df-prof-profile-head{display:flex;align-items:center;gap:16px;margin:18px 0}
.df-prof-profile-head small{display:block;color:#648078;margin-top:5px}
.df-prof-panel form{margin:16px 0 20px}
.df-prof-panel input[type=file]{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #cfddd9;border-radius:9px;background:#fff}
.df-prof-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}
.df-comp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}
.df-comp-form{background:#f9fbf8;padding:16px;border:1px solid #dbe6dd;border-radius:12px}
#side-initial.df-sidebar-has-photo{background-size:cover;background-position:center;background-repeat:no-repeat}
@media(max-width:650px){.df-prof-panel{padding:16px}.df-comp-grid{grid-template-columns:1fr}}
