/* RF OMR - interfaz institucional */
.rfomr-app{
  --navy:#102a56;--blue:#146de8;--blue-dark:#0d57be;--sky:#eef6ff;--ink:#172033;
  --muted:#5f6f86;--line:#dbe5f1;--soft:#f7faff;--green:#269767;--red:#d94848;--yellow:#d99a18;
  box-sizing:border-box!important;font-family:"Segoe UI",Arial,sans-serif!important;color:var(--ink)!important;
  width:calc(100vw - 36px)!important;max-width:1600px!important;min-width:0!important;
  margin:28px auto 48px!important;position:relative!important;left:auto!important;transform:none!important;
}
/* Rompe el ancho limitado del tema de WordPress sin producir scroll horizontal */
.rfomr-app{margin-left:calc(50% - 50vw + 18px)!important;margin-right:calc(50% - 50vw + 18px)!important}
.rfomr-app,.rfomr-app *{box-sizing:border-box}
.rfomr-app button,.rfomr-app input,.rfomr-app select,.rfomr-app textarea{font-family:"Segoe UI",Arial,sans-serif!important}

.rfomr-hero{
  background:#fff!important;border:1px solid #d8e5f6!important;border-left:8px solid var(--blue)!important;
  color:var(--ink)!important;border-radius:18px!important;padding:27px 32px!important;min-height:112px!important;
  display:flex!important;align-items:center!important;box-shadow:0 10px 30px rgba(31,71,125,.09)!important;
  position:relative!important;overflow:hidden!important;
}
.rfomr-hero:after{content:"";position:absolute;right:-42px;top:-80px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,#dbeafe 0 42%,#edf6ff 43% 60%,transparent 61%);opacity:.75}
.rfomr-hero-copy{position:relative;z-index:2}
.rfomr-kicker{font-size:13px!important;line-height:1.2!important;letter-spacing:.13em!important;font-weight:800!important;color:var(--blue)!important;text-transform:uppercase!important;margin:0 0 7px!important}
.rfomr-hero h2{display:block!important;font-family:"Segoe UI",Arial,sans-serif!important;font-size:38px!important;line-height:1.08!important;margin:0!important;padding:0!important;font-weight:800!important;letter-spacing:-.025em!important;color:var(--navy)!important;text-shadow:none!important}

.rfomr-tabs{display:flex!important;gap:8px!important;margin:16px 0 20px!important;padding:6px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(28,62,109,.06)!important;overflow-x:auto!important}
.rfomr-tabs button{appearance:none!important;border:0!important;background:transparent!important;color:#43536b!important;border-radius:9px!important;padding:11px 17px!important;font-size:14px!important;line-height:1.25!important;font-weight:700!important;cursor:pointer!important;white-space:nowrap!important;min-height:42px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}
.rfomr-tabs button:hover{background:#f1f6fd!important;color:var(--navy)!important}
.rfomr-tabs button.active{background:var(--blue)!important;color:#fff!important;box-shadow:0 5px 12px rgba(20,109,232,.22)!important}

.rfomr-panel{display:none}.rfomr-panel.active{display:block!important}
.rfomr-grid{display:grid!important;gap:20px!important;min-width:0!important}.rfomr-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.rfomr-card{min-width:0!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;padding:24px!important;box-shadow:0 8px 22px rgba(31,71,125,.055)!important;color:var(--ink)!important}
.rfomr-card h3{font-family:"Segoe UI",Arial,sans-serif!important;color:var(--navy)!important;margin:0 0 20px!important;padding:0!important;font-size:21px!important;line-height:1.25!important;font-weight:750!important;letter-spacing:-.01em!important}
.rfomr-card h4{font-family:"Segoe UI",Arial,sans-serif!important;color:var(--navy)!important;font-size:17px!important;font-weight:750!important}
.rfomr-form-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:15px 18px!important}.rfomr-form-grid.compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;max-width:none!important}
.rfomr-app label{display:flex!important;flex-direction:column!important;gap:7px!important;font-size:13px!important;line-height:1.3!important;font-weight:700!important;color:#34455e!important;margin:0!important}
.rfomr-app input,.rfomr-app select,.rfomr-app textarea{width:100%!important;max-width:none!important;border:1px solid #cbd7e6!important;border-radius:9px!important;padding:11px 12px!important;background:#fff!important;color:#172033!important;font-size:14px!important;line-height:1.35!important;outline:none!important;transition:.16s!important;box-shadow:none!important}
.rfomr-app input,.rfomr-app select{min-height:44px!important}
.rfomr-app input:focus,.rfomr-app select:focus,.rfomr-app textarea:focus{border-color:#6aa5f7!important;box-shadow:0 0 0 3px rgba(20,109,232,.10)!important}
.rfomr-app textarea{font-family:Consolas,"Courier New",monospace!important;font-size:13px!important;margin:12px 0 14px!important;min-height:220px!important;resize:vertical!important}
.rfomr-help{font-size:13px!important;color:var(--muted)!important;line-height:1.55!important;margin:11px 0 5px!important}

.rfomr-primary,.rfomr-secondary,.rfomr-mini{appearance:none!important;border:0!important;border-radius:9px!important;font-size:13px!important;line-height:1.2!important;font-weight:750!important;cursor:pointer!important;transition:.16s!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}
.rfomr-primary{background:var(--blue)!important;color:#fff!important;padding:12px 17px!important}.rfomr-primary:hover{background:var(--blue-dark)!important;transform:translateY(-1px)!important}
.rfomr-secondary{background:#eaf3ff!important;color:#1257ae!important;padding:11px 15px!important}.rfomr-secondary:hover{background:#dcecff!important}
.rfomr-mini{padding:8px 11px!important;background:#eef3f8!important;color:#2f415a!important;white-space:nowrap!important}.rfomr-mini:hover{background:#e2eaf3!important}.rfomr-mini.danger{background:#fff0f0!important;color:#bd3030!important}.rfomr-mini.danger:hover{background:#ffe3e3!important}

.rfomr-list{display:flex!important;flex-direction:column!important}.rfomr-list-row{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 4px!important;border-bottom:1px solid #edf1f6!important;gap:16px!important}.rfomr-list-main{min-width:0!important}.rfomr-list-row b{font-size:14px!important;line-height:1.35!important;color:#22334b!important}.rfomr-list-row small{display:block!important;color:var(--muted)!important;margin-top:4px!important;font-size:12px!important;line-height:1.4!important}.rfomr-row-actions{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.rfomr-empty,.rfomr-loading{padding:24px!important;text-align:center!important;color:var(--muted)!important;background:var(--soft)!important;border-radius:12px!important;font-size:14px!important}
.rfomr-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin-bottom:18px!important}.rfomr-toolbar h3{margin-bottom:5px!important}.rfomr-toolbar p{margin:0!important;color:var(--muted)!important;font-size:13px!important;line-height:1.5!important}.rfomr-notice{margin:18px 0!important;padding:14px 16px!important;border-radius:11px!important;background:#fff9e9!important;border:1px solid #f0ddb0!important;color:#755411!important;font-size:13px!important;line-height:1.5!important}
.rfomr-editor{margin-top:20px!important;padding:18px!important;border-radius:13px!important;background:#f7faff!important;border:1px solid #dce7f3!important}.rfomr-editor[hidden]{display:none!important}.rfomr-editor-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:14px!important}.rfomr-editor-head h4{margin:0!important}.rfomr-icon-btn{width:34px!important;height:34px!important;border:0!important;border-radius:8px!important;background:#e8eef6!important;color:#344054!important;font-size:22px!important;line-height:1!important;cursor:pointer!important}.rfomr-editor-actions{display:flex!important;gap:9px!important;margin-top:15px!important}
.rfomr-scan-results{display:grid!important;gap:10px!important}.rfomr-scan-card{display:flex!important;justify-content:space-between!important;align-items:center!important;border:1px solid var(--line)!important;padding:13px 15px!important;border-radius:11px!important}.rfomr-scan-card small{display:block!important;color:var(--muted)!important;margin-top:3px!important}.rfomr-scan-card.ok{border-color:#b9e6d0!important;background:#f3fbf7!important}.rfomr-scan-card.ok strong{color:#18794e!important}.rfomr-scan-card.error{border-color:#f1c1c1!important;background:#fff6f6!important}.rfomr-scan-card.error strong{color:#b42318!important}
.rfomr-inline-select{max-width:none!important;width:min(760px,100%)!important;margin-bottom:20px!important}.rfomr-report-title{border-bottom:1px solid var(--line)!important;margin-bottom:18px!important}.rfomr-report-title h2{margin-bottom:4px!important;font-size:30px!important;color:var(--navy)!important}.rfomr-report-title p{color:var(--muted)!important}.rfomr-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important;margin:18px 0 24px!important}.rfomr-kpis>div{background:#f7faff!important;padding:16px!important;border-radius:13px!important;border:1px solid #e2eaf4!important}.rfomr-kpis span,.rfomr-kpis small{display:block!important;font-size:11px!important;color:var(--muted)!important}.rfomr-kpis b{font-size:25px!important;color:var(--navy)!important}.rfomr-levels{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px!important;margin-bottom:26px!important}.rfomr-level{padding:17px!important;border-radius:13px!important;background:#f8fafc!important;border:1px solid var(--line)!important}.rfomr-level strong{font-size:30px!important;display:block!important}.rfomr-level span{color:var(--muted)!important;font-size:12px!important}
.rfomr-table-wrap{overflow:auto!important;max-width:100%!important}.rfomr-app table{width:100%!important;border-collapse:collapse!important;font-size:12px!important;color:var(--ink)!important}.rfomr-app th,.rfomr-app td{padding:10px 9px!important;border-bottom:1px solid #edf0f4!important;text-align:left!important}.rfomr-app th{background:#f8fafc!important;font-size:11px!important;color:#475467!important;position:sticky!important;top:0!important}.rfomr-app td.key{background:#eaf8f0!important;font-weight:800!important}.pill{font-size:10px!important;font-weight:800!important;padding:4px 7px!important;border-radius:999px!important}.pill.insuficiente{background:#fdecec!important;color:#b42318!important}.pill.elemental{background:#fff5d8!important;color:#8b6200!important}.pill.adecuado{background:#eaf8f0!important;color:#18794e!important}
.report-grid{align-items:start!important;margin-top:24px!important}.rfomr-stacks{display:grid!important;gap:10px!important;margin:10px 0 24px!important}.rfomr-stack-row{display:grid!important;grid-template-columns:minmax(180px,290px) 1fr!important;gap:13px!important;align-items:center!important}.rfomr-stack-label{font-size:12px!important}.rfomr-stack{height:30px!important;display:flex!important;border-radius:8px!important;overflow:hidden!important;background:#eee!important}.rfomr-stack span{display:flex!important;align-items:center!important;justify-content:center!important;font-size:10px!important;font-weight:800!important;color:#fff!important}.rfomr-stack .good,.rfomr-legend .good{background:var(--green)!important}.rfomr-stack .bad,.rfomr-legend .bad{background:var(--red)!important}.rfomr-stack .omit,.rfomr-legend .omit{background:#98a2b3!important}.rfomr-legend{font-size:11px!important;color:var(--muted)!important;display:flex!important;gap:6px!important;align-items:center!important}.rfomr-legend span{width:13px!important;height:13px!important;border-radius:3px!important;display:inline-block!important;margin-left:8px!important}.rfomr-toast{position:fixed!important;right:24px!important;bottom:24px!important;background:#172033!important;color:#fff!important;padding:12px 16px!important;border-radius:10px!important;z-index:99999!important;box-shadow:0 10px 30px #0003!important}.rfomr-toast.bad{background:#b42318!important}.rfomr-login{padding:20px!important;border:1px solid #ddd!important;border-radius:12px!important;background:#fff!important}

@media(max-width:1100px){.rfomr-app{width:calc(100vw - 24px)!important;margin-left:calc(50% - 50vw + 12px)!important;margin-right:calc(50% - 50vw + 12px)!important}.rfomr-grid.two{grid-template-columns:1fr!important}.rfomr-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.rfomr-app{width:calc(100vw - 14px)!important;margin:10px 0 30px!important;margin-left:calc(50% - 50vw + 7px)!important}.rfomr-hero{padding:22px 20px!important;min-height:96px!important;border-radius:14px!important}.rfomr-hero h2{font-size:31px!important}.rfomr-kicker{font-size:11px!important}.rfomr-form-grid,.rfomr-form-grid.compact{grid-template-columns:1fr!important}.rfomr-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.rfomr-stack-row{grid-template-columns:1fr!important}.rfomr-toolbar{align-items:flex-start!important;flex-direction:column!important}.rfomr-levels{grid-template-columns:1fr!important}.rfomr-list-row{align-items:flex-start!important;flex-direction:column!important}.rfomr-row-actions{justify-content:flex-start!important}.rfomr-card{padding:18px!important}}
@media print{body *{visibility:hidden}.rfomr-app,.rfomr-app *{visibility:visible}.rfomr-tabs,.rfomr-hero,.rfomr-panel:not([data-panel="resultados"]),#report-eval,.rfomr-inline-select,.rfomr-toolbar button{display:none!important}.rfomr-app{position:absolute!important;left:0!important;top:0!important;max-width:none!important;width:100%!important;margin:0!important;transform:none!important}.rfomr-card{border:0!important;box-shadow:none!important;padding:0!important}.rfomr-table-wrap{overflow:visible!important}.report-grid{grid-template-columns:1fr!important}.rfomr-stack-row{grid-template-columns:220px 1fr!important;break-inside:avoid}}

/* v1.1.2 - ancho real de viewport, incluso dentro de WPBakery/tema */
#rfomr-app.rfomr-app{
  width:calc(100vw - 24px)!important;
  max-width:none!important;
  min-width:0!important;
  margin-top:28px!important;
  margin-bottom:48px!important;
  margin-left:calc(50% - 50vw + 12px)!important;
  margin-right:0!important;
  padding:0!important;
}
.rfomr-toolbar-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
@media(max-width:760px){
  #rfomr-app.rfomr-app{width:calc(100vw - 16px)!important;margin-left:calc(50% - 50vw + 8px)!important}
  .rfomr-toolbar-actions{width:100%!important;justify-content:flex-start!important}
  .rfomr-toolbar{align-items:flex-start!important;flex-direction:column!important}
}

/* v1.2.0 - dashboard de resultados más visual */
.rfomr-dashboard-summary{display:grid!important;grid-template-columns:1.45fr repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:18px 0 24px!important}
.rfomr-summary-main,.rfomr-summary-stat{border:1px solid #dfe8f3!important;border-radius:16px!important;background:#fff!important;padding:18px 20px!important;box-shadow:0 6px 18px rgba(31,71,125,.05)!important}
.rfomr-summary-main{background:linear-gradient(135deg,#0f2d59,#146de8)!important;color:#fff!important;border:0!important}
.rfomr-summary-main span,.rfomr-summary-main small{display:block!important;color:#dceaff!important;font-size:12px!important}.rfomr-summary-main b{display:block!important;font-size:38px!important;line-height:1.05!important;margin:6px 0!important;color:#fff!important}
.rfomr-summary-stat span,.rfomr-summary-stat small{display:block!important;color:var(--muted)!important;font-size:11px!important}.rfomr-summary-stat b{display:block!important;font-size:26px!important;color:var(--navy)!important;margin:5px 0!important}
.rfomr-performance-panel,.rfomr-report-section{margin:0 0 24px!important;padding:22px!important;border:1px solid var(--line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 20px rgba(31,71,125,.045)!important}
.rfomr-section-head{margin-bottom:16px!important}.rfomr-section-head h3{margin:0 0 4px!important;font-size:22px!important;color:var(--navy)!important}.rfomr-section-head p{margin:0!important;color:var(--muted)!important;font-size:13px!important}
.rfomr-level-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:0 0 18px!important}
.rfomr-level-card{position:relative!important;overflow:hidden!important;border-radius:15px!important;padding:17px 18px!important;border:1px solid #e3eaf2!important;background:#f8fafc!important}.rfomr-level-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px}.rfomr-level-card.insuficiente:before{background:#d94848}.rfomr-level-card.elemental:before{background:#d99a18}.rfomr-level-card.adecuado:before{background:#269767}.rfomr-level-card span{display:block!important;font-size:13px!important;font-weight:800!important;color:#344054!important}.rfomr-level-card b{display:block!important;font-size:34px!important;line-height:1!important;color:var(--navy)!important;margin:7px 0!important}.rfomr-level-card small{color:var(--muted)!important;font-size:12px!important}
.rfomr-level-chart{display:grid!important;gap:16px!important;padding:18px!important;border-radius:14px!important;background:#f8fbff!important;border:1px solid #e3edf9!important}
.rfomr-level-bar-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;margin-bottom:7px!important}.rfomr-level-bar-head b{display:block!important;font-size:14px!important;color:#25364d!important}.rfomr-level-bar-head small{display:block!important;font-size:11px!important;color:var(--muted)!important;margin-top:2px!important}.rfomr-level-bar-head strong{font-size:20px!important;color:var(--navy)!important}
.rfomr-level-track{height:34px!important;border-radius:10px!important;background:#e9eef5!important;overflow:hidden!important}.rfomr-level-fill{height:100%!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;padding:0 10px!important;border-radius:10px!important;transition:width .35s ease!important}.rfomr-level-fill span{color:#fff!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important}.rfomr-level-bar.insuficiente .rfomr-level-fill{background:#d94848!important}.rfomr-level-bar.elemental .rfomr-level-fill{background:#d99a18!important}.rfomr-level-bar.adecuado .rfomr-level-fill{background:#269767!important}
.rfomr-report-section .rfomr-table-wrap{max-height:620px!important}
@media(max-width:1150px){.rfomr-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.rfomr-summary-main{grid-column:1/-1!important}.rfomr-level-card-grid{grid-template-columns:1fr!important}}
@media(max-width:700px){.rfomr-dashboard-summary{grid-template-columns:1fr!important}.rfomr-summary-main{grid-column:auto!important}.rfomr-performance-panel,.rfomr-report-section{padding:16px!important}.rfomr-level-track{height:38px!important}.rfomr-level-fill span{font-size:10px!important}}
@media print{.rfomr-dashboard-summary{grid-template-columns:repeat(5,1fr)!important}.rfomr-summary-main{grid-column:auto!important;background:#eef5ff!important;color:#102a56!important;border:1px solid #dbe5f1!important}.rfomr-summary-main b{color:#102a56!important}.rfomr-summary-main span,.rfomr-summary-main small{color:#5f6f86!important}.rfomr-performance-panel,.rfomr-report-section{box-shadow:none!important;break-inside:avoid}.rfomr-level-fill{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}


/* Acciones masivas por curso */
.rfomr-course-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin:4px 0 18px;border:1px solid #d9e2ec;border-radius:14px;background:#f8fbff}
.rfomr-course-actions>div:first-child{display:flex;flex-direction:column;gap:3px}
.rfomr-course-actions b{font-size:15px;color:#16324f}
.rfomr-course-actions small{font-size:12px;color:#65788c;line-height:1.4}
.rfomr-course-action-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.rfomr-danger-btn{border:0;border-radius:10px;padding:11px 15px;font-weight:800;cursor:pointer;background:#b42318;color:#fff;box-shadow:0 2px 5px rgba(180,35,24,.18)}
.rfomr-danger-btn:hover{filter:brightness(.95)}
@media(max-width:800px){.rfomr-course-actions{align-items:stretch;flex-direction:column}.rfomr-course-action-buttons{justify-content:stretch}.rfomr-course-action-buttons button{flex:1 1 100%}}
