.df-professional-page .df-page-main{min-height:72vh;background:#f6f9fb}
.df-professional-section{padding:54px 0 72px}
.df-professional-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:32px;align-items:start}
.df-professional-card{background:#fff;border:1px solid rgba(38,72,91,.12);border-radius:18px;box-shadow:0 16px 42px rgba(28,61,80,.08);padding:30px}
.df-professional-card h2{font-size:26px;line-height:1.2;margin:7px 0 10px;color:#243c4c}
.df-professional-card p{color:#607480;line-height:1.65;margin-bottom:18px}
.df-professional-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.09em;color:#398fbe;text-transform:uppercase}
.df-professional-kicker .fa{font-size:13px}
.df-professional-form{display:grid;gap:18px;margin-top:24px}
.df-professional-field label{display:block;color:#344d5b;font-weight:700;font-size:14px;margin-bottom:7px}
.df-professional-field input{width:100%;height:50px;border:1px solid #d5e0e6;border-radius:10px;padding:0 14px;font-size:16px;color:#263f4d;background:#fff;outline:none;transition:border-color .18s,box-shadow .18s}
.df-professional-field input:focus{border-color:#3992c5;box-shadow:0 0 0 3px rgba(57,146,197,.13)}
.df-professional-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;border:0;border-radius:10px;padding:0 20px;background:#358fbe;color:#fff;font-weight:800;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}
.df-professional-button:hover,.df-professional-button:focus{background:#2b7ca7;color:#fff;text-decoration:none;box-shadow:0 8px 24px rgba(45,128,171,.22);transform:translateY(-1px)}
.df-professional-button--secondary{background:#eef5f8;color:#2b6683}
.df-professional-button--secondary:hover,.df-professional-button--secondary:focus{background:#e4f0f5;color:#245b75}
.df-professional-note{display:flex;gap:14px;padding:17px 18px;border-radius:12px;background:#f2f7f9;color:#526b78;font-size:14px;line-height:1.55;margin-top:22px}
.df-professional-note .fa{color:#398fbe;margin-top:3px}
.df-professional-message{border-radius:10px;padding:13px 15px;margin:0 0 18px;font-size:14px;line-height:1.5}
.df-professional-message--error{background:#fff1f1;color:#8d3434;border:1px solid #f3d2d2}
.df-professional-message--success{background:#edf8f2;color:#276a49;border:1px solid #cfe9da}
.df-professional-feature-list{list-style:none;padding:0;margin:22px 0 0}
.df-professional-feature-list li{display:flex;gap:13px;padding:14px 0;border-bottom:1px solid #edf1f3;color:#4b6572;line-height:1.5}
.df-professional-feature-list li:last-child{border-bottom:0}
.df-professional-feature-list .fa{color:#3992c5;margin-top:4px;width:16px;text-align:center}
.df-professional-session{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e8eef1}
.df-professional-session strong{display:block;font-size:21px;color:#263f4d;margin-top:4px}
.df-professional-session small{display:block;color:#70848f;margin-top:4px}
.df-professional-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.df-professional-logout{display:inline}
.df-professional-security{font-size:13px;color:#7a8e99;margin-top:18px}
.df-professional-contact-link{font-weight:700;color:#358fbe}
.df-professional-required{background:#fff8e8;border:1px solid #f2ddb0;color:#77591d;border-radius:10px;padding:13px 15px;margin-bottom:18px}
@media(max-width:991px){.df-professional-grid{grid-template-columns:1fr}.df-professional-card{padding:24px}}
@media(max-width:575px){.df-professional-section{padding:34px 0 52px}.df-professional-card{padding:20px;border-radius:14px}.df-professional-session{display:block}.df-professional-session .df-professional-button{margin-top:15px;width:100%}.df-professional-actions .df-professional-button,.df-professional-actions form{width:100%}.df-professional-actions form .df-professional-button{width:100%}}

/* Fase 3 · integración con Información técnica */
.df-tech-professional-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px;margin:0 0 22px;border:1px solid rgba(57,146,197,.2);border-radius:14px;background:linear-gradient(135deg,#f2f8fb 0%,#fff 100%);box-shadow:0 10px 28px rgba(32,76,99,.06)}
.df-tech-professional-banner.is-authenticated{border-color:rgba(52,145,101,.22);background:linear-gradient(135deg,#f1faf5 0%,#fff 100%)}
.df-tech-professional-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#e4f1f7;color:#337fa8;font-size:18px}
.df-tech-professional-banner.is-authenticated .df-tech-professional-icon{background:#e1f3e9;color:#337e58}
.df-tech-professional-copy strong{display:block;color:#2b4655;font-size:15px;margin-bottom:2px}
.df-tech-professional-copy p{margin:0;color:#627985;font-size:14px;line-height:1.45}
.df-tech-professional-action{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 13px;border-radius:9px;background:#358fbe;color:#fff;font-weight:800;font-size:13px;text-decoration:none}
.df-tech-professional-action:hover,.df-tech-professional-action:focus{background:#2b7ca7;color:#fff;text-decoration:none}
.technical-professional-badge{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.025em;line-height:1.2;white-space:nowrap}
.technical-professional-badge.is-locked{background:#eef4f7;color:#496d7f;border:1px solid #d9e5ea}
.technical-professional-badge.is-open{background:#eaf6ef;color:#347453;border:1px solid #d2e9dc}
.technical-view-link--locked{background:#eef4f7!important;color:#496d7f!important;border-color:#d7e3e9!important}
.technical-view-link--locked:hover,.technical-view-link--locked:focus{background:#e2edf2!important;color:#315d72!important}
@media(max-width:767px){.df-tech-professional-banner{grid-template-columns:auto 1fr}.df-tech-professional-action{grid-column:1/-1;justify-content:center}.technical-professional-badge{margin:7px 0 0;display:flex;width:max-content}}

/* Fase 6 · registro profesional */
.df-professional-check{display:flex;align-items:flex-start;gap:10px;color:#526b78;font-size:13px;line-height:1.5;cursor:pointer}
.df-professional-check input{margin-top:4px;flex:0 0 auto}
.df-professional-check a{color:#358fbe;font-weight:700}
.df-professional-register-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:16px 18px;border:1px solid #dbe8ee;border-radius:12px;background:#f7fafc}
.df-professional-register-cta strong{display:block;color:#314d5d;font-size:14px}
.df-professional-register-cta span{display:block;color:#71858f;font-size:12px;margin-top:2px}
.df-professional-register-cta .df-professional-button{min-height:42px;padding:0 15px;font-size:13px;white-space:nowrap}
@media(max-width:575px){.df-professional-register-cta{display:block}.df-professional-register-cta .df-professional-button{width:100%;margin-top:12px}}
.df-professional-account-data{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.df-professional-account-data>div{padding:13px 14px;background:#f4f8fa;border-radius:10px}
.df-professional-account-data span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#7a8e99}
.df-professional-account-data strong{display:block;color:#304b5a;margin-top:4px;word-break:break-word}
.df-professional-divider{border:0;border-top:1px solid #e7eef1;margin:24px 0}
.df-professional-subtitle{font-size:19px;color:#304b5a;margin:0 0 8px}
@media(max-width:575px){.df-professional-account-data{grid-template-columns:1fr}}

.df-hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Tirada extra 1 · aviso operativo de solicitud de piezas */
.df-tech-parts-notice{
    display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:15px;
    margin:0 0 18px;padding:18px 20px;border:1px solid #eed9b8;border-left:5px solid #df8a25;
    border-radius:14px;background:linear-gradient(135deg,#fff9ef 0%,#fff 88%);box-shadow:0 10px 28px rgba(91,70,34,.06);
}
.df-tech-parts-notice-icon{
    display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;
    background:#fff0d5;color:#b86718;font-size:19px;
}
.df-tech-parts-notice-copy strong{display:block;margin:1px 0 4px;color:#4c4030;font-size:15px;line-height:1.35}
.df-tech-parts-notice-copy p{margin:0;color:#695b49;font-size:14px;line-height:1.55}
.df-tech-parts-notice-copy p strong{display:inline;margin:0;color:#51422f;font-size:inherit}
@media(max-width:575px){
    .df-tech-parts-notice{grid-template-columns:1fr;padding:16px;border-left-width:4px}
    .df-tech-parts-notice-icon{width:38px;height:38px}
}
