.opa-diagnostic-open{display:inline-flex;justify-content:center;align-items:center;width:100%;min-height:44px;border:1px solid #25d366;border-radius:8px;background:#25d366;color:#06140b;font:inherit;font-weight:900;cursor:pointer}
.opa-diagnostic-open:disabled{opacity:1;cursor:not-allowed;filter:none;border-color:#25d366;background:rgba(37,211,102,.14);color:#b8f7ce;box-shadow:inset 0 0 0 1px rgba(37,211,102,.12)}
.opa-preconsent{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;margin:12px 0;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.025);color:#cbd8e9;font-size:.7rem;line-height:1.4;text-align:left}
.opa-preconsent input{margin-top:3px;accent-color:#25d366}
.opa-preconsent a{color:#72e7ff}
.opa-diagnostic-dialog{width:min(620px,calc(100% - 28px));max-height:min(88vh,760px);padding:0;border:1px solid rgba(0,210,255,.4);border-radius:18px;background:linear-gradient(145deg,#111b29,#070b12);color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.72);overflow:auto}
.opa-diagnostic-dialog::backdrop{background:rgba(2,5,10,.82);backdrop-filter:blur(6px)}
.opa-diagnostic-shell{padding:clamp(22px,5vw,34px)}
.opa-diagnostic-header{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;margin-bottom:18px}
.opa-diagnostic-header h2{margin:6px 0 8px;font-size:clamp(1.35rem,4vw,1.8rem)}
.opa-diagnostic-header p{margin:0;color:#b9c7d8;line-height:1.55}
.opa-diagnostic-close{flex:0 0 40px;width:40px;height:40px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:1.35rem;cursor:pointer}
.opa-diagnostic-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(37,211,102,.13);color:#9cf1bb;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.opa-diagnostic-priority{margin:16px 0;padding:12px 14px;border-left:3px solid #00d2ff;border-radius:8px;background:rgba(0,210,255,.07);color:#c9eefa;font-size:.82rem;line-height:1.5}
.opa-ficha-choice-group{margin-top:4px}
.opa-ficha-accordion{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.025)}
.opa-ficha-toggle{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;width:100%;min-height:50px;padding:11px 12px;border:0;background:rgba(0,210,255,.045);color:#dce7f5;font:inherit;font-size:.83rem;font-weight:800;text-align:left;cursor:pointer}
.opa-ficha-toggle:hover,.opa-ficha-toggle:focus-visible,.opa-ficha-toggle[aria-expanded="true"]{background:rgba(0,210,255,.1);color:#fff}
.opa-ficha-toggle span{text-align:left;line-height:1.4}
.opa-ficha-title{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center}
.opa-module-badge{display:inline-flex;align-items:center;justify-content:center;min-width:112px;padding:4px 8px;border:1px solid currentColor;border-radius:999px;font-size:.65rem;font-style:normal;font-weight:950;letter-spacing:.045em;text-transform:uppercase}
.opa-module-o{color:#8ff0b3;background:rgba(37,211,102,.09)}
.opa-module-p{color:#86eaff;background:rgba(0,210,255,.09)}
.opa-module-a{color:#d8b6ff;background:rgba(158,74,255,.1)}
.opa-ficha-toggle::after{content:'+';font-size:1rem}
.opa-ficha-toggle[aria-expanded="true"]::after{content:'−'}
.opa-ficha-options{display:grid;gap:7px;padding:10px 12px 12px;border-top:1px solid rgba(255,255,255,.08)}
.opa-ficha-options[hidden]{display:none}
.opa-ficha-options>.opa-ficha-complete{margin:0;border-color:rgba(0,210,255,.24);background:rgba(0,210,255,.06)}
.opa-ficha-options label{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;padding:8px 9px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(255,255,255,.025);color:#cbd8e9;font-size:.77rem;line-height:1.35;cursor:pointer}
.opa-ficha-options label:has(input:checked){border-color:#25d366;background:rgba(37,211,102,.1);color:#fff}
.opa-ficha-options input{margin-top:2px;accent-color:#25d366}
.opa-selection-status{margin-bottom:14px!important}
.opa-request-form{margin-bottom:18px}
.opa-request-form>h3{margin:0 0 5px;font-size:1rem}
.opa-request-form>p{margin:0 0 14px;color:#aebbd0;font-size:.78rem;line-height:1.5}
.opa-diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.opa-diagnostic-field{display:grid;gap:6px;color:#e7effa;font-size:.82rem;font-weight:750}
.opa-diagnostic-field.full{grid-column:1/-1}
.opa-diagnostic-field input,.opa-diagnostic-field select,.opa-diagnostic-field textarea{width:100%;border:1px solid #314058;border-radius:9px;background:#080e18;color:#fff;padding:11px;font:inherit}
.opa-diagnostic-field textarea{min-height:105px;resize:vertical}
.opa-service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.opa-service-check{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.035);color:#d8e4f4;font-size:.78rem;line-height:1.4}
.opa-service-check input{width:auto;margin-top:2px;accent-color:#25d366}
.opa-calendar-box{margin-top:18px;padding:15px;border:1px solid rgba(0,210,255,.2);border-radius:12px;background:rgba(0,210,255,.035)}
.opa-calendar-box h3{margin:0 0 7px}.opa-calendar-box>p{margin:0 0 13px;color:#aebbd0;font-size:.8rem;line-height:1.5}
.opa-booking-calendar-shell{margin-top:14px}
.opa-booking-calendar-shell .booking-hours h3{margin:0 0 10px;font-size:.9rem}
.opa-booking-calendar-shell .booking-colombia-clock{margin-top:12px}
.opa-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}
.opa-time-button{min-height:42px;border:1px solid rgba(0,210,255,.3);border-radius:8px;background:rgba(0,210,255,.07);color:#dffaff;font:inherit;font-weight:850;cursor:pointer}
.opa-time-button.is-selected{border-color:#25d366;background:rgba(37,211,102,.17);color:#baf7cf}
.opa-time-button:disabled{opacity:.38;cursor:not-allowed}
.opa-availability-status{min-height:22px;margin:8px 0 0;color:#aebbd0;font-size:.78rem}
.opa-consent{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;margin-top:12px;padding:11px;border:1px solid rgba(255,255,255,.11);border-radius:9px;color:#c9d5e5;font-size:.76rem;line-height:1.45}
.opa-consent input{margin-top:3px;accent-color:#25d366}
.opa-submit{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:9px;background:linear-gradient(135deg,#25d366,#00d2a8);color:#04110a;font:inherit;font-weight:950;cursor:pointer}
.opa-submit:disabled{opacity:.45;cursor:not-allowed}
.opa-result{min-height:24px;margin:11px 0 0;color:#b9c7d8;font-size:.82rem;line-height:1.5}
.opa-whatsapp-result{display:none;justify-content:center;align-items:center;min-height:44px;margin-top:10px;border-radius:8px;background:#25d366;color:#07140b;text-decoration:none;font-weight:900}
.opa-whatsapp-result.is-visible{display:flex}
.opa-whatsapp-return{margin-top:10px;padding:12px;border:1px solid rgba(37,211,102,.38);border-radius:10px;background:rgba(37,211,102,.08)}
.opa-whatsapp-return[hidden]{display:none}
.opa-whatsapp-return p{margin:0;color:#d7f5e2;font-size:.8rem;line-height:1.5}
.opa-whatsapp-return button{width:100%;min-height:44px;margin-top:10px;border:1px solid #25d366;border-radius:8px;background:transparent;color:#aaf4c5;font:inherit;font-weight:900;cursor:pointer}
.opa-whatsapp-return button:hover,.opa-whatsapp-return button:focus-visible{background:#25d366;color:#07140b}
.opa-meeting-result{display:none;align-items:center;justify-content:center;margin-top:.7rem;padding:.78rem 1rem;border:1px solid rgba(11,213,255,.55);border-radius:10px;background:rgba(11,213,255,.08);color:#dffaff;font-size:.82rem;font-weight:850;text-decoration:none;text-align:center}
.opa-meeting-result.is-visible{display:flex}
@media(max-width:680px){.opa-diagnostic-grid,.opa-service-options,.opa-time-grid{grid-template-columns:1fr}.opa-diagnostic-dialog{max-height:95vh}.opa-diagnostic-shell{padding:18px}.opa-diagnostic-header{gap:10px}.opa-ficha-title{grid-template-columns:1fr;gap:6px}.opa-module-badge{min-width:0;width:max-content}}

