/* IMSA 1.40.12: gestor de curso con navegación natural y formularios de trabajo. */
.imsa-app.imsa-admin-ui .content:has(> .imsa-course-management-page){padding:0!important;max-width:none!important;min-height:100vh}
.imsa-app.imsa-admin-ui .imsa-course-management-page{
  position:relative!important;inset:auto!important;z-index:auto!important;
  overflow:visible!important;overscroll-behavior:auto!important;scrollbar-gutter:auto!important;
  min-height:100%;background:#f4f7fc;
}
.imsa-app.imsa-admin-ui .imsa-course-management-surface{min-height:100vh!important;padding:30px clamp(18px,3vw,52px) 88px!important}
.imsa-app.imsa-admin-ui .imsa-course-management-page .workspace-tabs{top:0;scroll-margin-top:15px}
.imsa-app.imsa-admin-ui .imsa-course-management-page .workspace-pane{padding:clamp(18px,2.6vw,34px)!important;overflow:visible!important}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-wizard-stage{
  position:static!important;display:block!important;opacity:1!important;visibility:visible!important;
  transform:none!important;margin-bottom:24px;padding:24px;border:1px solid #e2e9f5;
  border-radius:17px;background:#fff;box-shadow:0 7px 20px rgba(16,42,90,.035)
}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-wizard-stage:last-child{margin-bottom:0}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-eval-split{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start
}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-eval-split>.imsa-wizard-stage{margin:0}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-students-pane .imsa-wizard-stage:first-child{background:#f6f9ff}
.imsa-enrollment-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin:8px 0 20px}
.imsa-enrollment-toolbar>div:first-child{display:flex;flex-direction:column;gap:5px}
.imsa-enrollment-toolbar strong{font-size:14px;color:#263e69}
.imsa-enrollment-toolbar span{font-size:12px;color:#7286a4}
.imsa-enrollment-filters{display:flex;flex-wrap:wrap;gap:5px;padding:5px;border-radius:12px;background:#eff4fc}
.imsa-enrollment-filters button{border:0;background:transparent;padding:9px 13px;border-radius:9px;font-size:11px;font-weight:800;color:#6a7f9f;cursor:pointer}
.imsa-enrollment-filters button.active{background:#fff;color:#3159c6;box-shadow:0 2px 8px #1c428117}
.imsa-app.imsa-admin-ui .imsa-course-management-page :is(.imsa-students-pane,.imsa-classes-pane,.imsa-agenda-pane,.imsa-evaluations-pane)>.imsa-wizard-stage:first-child{margin-top:0}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-step-section-title>span{font-size:16px}
.imsa-app.imsa-admin-ui .imsa-course-management-page .workspace-table{overflow-x:auto}
.imsa-app.imsa-admin-ui .imsa-course-management-page .workspace-row{min-width:660px}
.imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-settings-pane .imsa-wizard-stage{background:#fff}
.imsa-app.imsa-admin-ui .imsa-save-settings-footer{
  display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;margin-top:20px;
  border-radius:18px;background:#162f64;color:#fff
}
.imsa-app.imsa-admin-ui .imsa-save-settings-footer div{display:flex;flex-direction:column;gap:5px}
.imsa-app.imsa-admin-ui .imsa-save-settings-footer strong{font-size:17px;color:#fff}
.imsa-app.imsa-admin-ui .imsa-save-settings-footer small{color:#c1d2f1}
.imsa-app.imsa-admin-ui .imsa-save-settings-footer button{flex:0 0 auto}

.imsa-app.imsa-admin-ui .imsa-new-content{background:transparent!important;border:0!important;padding:5px 0!important;box-shadow:none!important}
.imsa-page-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}
.imsa-page-section-head h2{font-size:clamp(25px,2.4vw,33px);font-weight:850;letter-spacing:-.04em;color:#122b57;margin:7px 0 8px}
.imsa-page-section-head p{margin:0;max-width:730px;font-size:14px;line-height:1.65;color:#647793}
.imsa-kicker{font-size:11px;font-weight:850;color:#476fe0;letter-spacing:.11em}
.imsa-count-bubble{padding:9px 15px;border-radius:100px;background:#e8efff;color:#315ac4;font-weight:800;font-size:12px;white-space:nowrap}
.imsa-module-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.imsa-module-card,.imsa-create-panel,.imsa-lesson-collection,.imsa-create-lesson-panel,.imsa-editor-card{
  border:1px solid #dfe8f5;border-radius:19px;background:#fff;box-shadow:0 9px 24px rgba(20,46,93,.035)
}
.imsa-module-card{display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s,transform .2s}
.imsa-module-card:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(23,55,110,.09)}
.imsa-module-open{display:flex;align-items:flex-start;gap:18px;text-align:left;width:100%;padding:27px 23px 22px;flex:1;background:none;border:0;cursor:pointer;color:inherit}
.imsa-module-icon{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:16px;background:#e8efff;color:#3564df;font-size:24px}
.imsa-module-open>.fa-chevron-right{margin:auto 0 auto auto;font-size:12px;color:#a0b1cc}
.imsa-module-body{display:flex;flex-direction:column;min-width:0;gap:7px}
.imsa-module-body small{color:#486dd3;font-weight:850;font-size:10px;letter-spacing:.1em}
.imsa-module-body strong{color:#1a335f;font-size:18px;line-height:1.3;font-weight:800}
.imsa-module-body>span{color:#7384a0;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.imsa-module-body em{font-size:11px;font-style:normal;color:#587299;font-weight:700;margin-top:5px}
.imsa-card-toolbar{padding:13px 21px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px solid #edf1f8;background:#fcfdff}
.imsa-card-toolbar .btn{font-size:11px!important;padding:9px 12px!important;min-height:35px!important}
.imsa-icon-action{width:33px;height:33px;display:grid;place-items:center;border:1px solid #dbe5f4;border-radius:9px;background:#fff;color:#49638c;cursor:pointer;font-size:13px}
.imsa-icon-action:hover:not(:disabled){background:#ecf3ff;color:#1f54c7}
.imsa-icon-action:disabled{opacity:.35;cursor:not-allowed}
.imsa-icon-action.danger:hover{color:#bb234a;background:#fff0f4}
.imsa-create-panel{padding:25px;display:flex;flex-direction:column}
.imsa-create-symbol{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#e7f8f0;color:#198b66;font-size:22px}
.imsa-create-panel h3{margin:16px 0 5px;color:#20375e;font-size:18px}
.imsa-create-panel>p{margin:0 0 18px;font-size:13px;color:#7185a1}
.imsa-stack-fields{display:flex;flex-direction:column;gap:11px;flex:1}
.imsa-stack-fields>label{display:flex;flex-direction:column;gap:5px;color:#4f6280;font-size:12px;font-weight:750}
.imsa-stack-fields>button{align-self:flex-start;margin-top:auto}
.imsa-editor-trail{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:1px 0 23px;font-size:13px;color:#7285a3}
.imsa-editor-trail button{border:0;background:none;padding:5px 0;color:#315bc7;font:inherit;font-weight:750;cursor:pointer}
.imsa-editor-trail>i{font-size:9px;color:#98a9c2}
.imsa-editor-trail strong{color:#263c63;font-weight:800}
.imsa-head-buttons{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.imsa-lesson-collection{padding:22px 24px;margin-bottom:20px}
.imsa-list-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.imsa-list-heading h3{color:#1d365e;font-size:18px;margin:0;font-weight:800}
.imsa-list-heading>span{color:#6e82a2;font-size:12px;font-weight:700}
.imsa-lesson-row{display:flex;align-items:center;gap:16px;padding:15px 12px;border-top:1px solid #edf1f8}
.imsa-lesson-number{width:32px;color:#8d9db9;font-weight:850;font-size:12px}
.imsa-lesson-kind{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:13px;background:#edf4ff;color:#2f62d0;font-size:17px}
.imsa-lesson-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.imsa-lesson-text h4{font-size:15px;color:#203a66;margin:0}
.imsa-lesson-text span{font-size:12px;color:#7185a3}
.imsa-lesson-text small{font-size:11px;color:#7890ad}
.imsa-lesson-row .btn{min-height:36px!important;padding:9px 12px!important;font-size:12px!important;white-space:nowrap}
.imsa-help-empty{text-align:center;padding:36px 15px;color:#8a9bb5}
.imsa-help-empty>i{font-size:25px;margin-bottom:12px;color:#9bb0d2}
.imsa-help-empty h4{color:#2c4167;font-size:15px;margin:7px}
.imsa-help-empty p{font-size:13px;margin:0;line-height:1.5}
.imsa-help-empty.small{padding:17px 12px;background:#f7f9fd;border-radius:12px}
.imsa-create-lesson-panel{padding:25px}
.imsa-create-lesson-panel .workspace-form-grid{margin-top:18px}
.imsa-hint{margin:10px 0 0!important;line-height:1.55;font-size:12px;color:#7790b0!important}
.imsa-form-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:20px}
.imsa-lesson-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:20px;align-items:start}
.imsa-lesson-primary{display:flex;flex-direction:column;gap:20px;min-width:0}
.imsa-lesson-editor-aside{display:flex;flex-direction:column;gap:20px;min-width:0}
.imsa-editor-card{padding:25px}
.imsa-editor-card-title{display:flex;align-items:flex-start;gap:14px;margin-bottom:21px}
.imsa-section-icon{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:12px;font-size:18px}
.imsa-section-icon.blue{background:#e8efff;color:#285fce}
.imsa-section-icon.violet{background:#f0ecff;color:#7355c7}
.imsa-section-icon.teal{background:#e7f8f4;color:#1b987a}
.imsa-section-icon.coral{background:#fff0e7;color:#b97222}
.imsa-editor-card-title h3,.imsa-editor-card h3{margin:0 0 6px;font-size:17px;color:#1a345d;font-weight:850;letter-spacing:-.015em}
.imsa-editor-card-title p,.imsa-editor-card>p{margin:0;color:#7185a3;line-height:1.6;font-size:12px}
.imsa-main-upload{display:flex;flex-direction:column;gap:14px}
.imsa-dropzone{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:154px;text-align:center;padding:22px;border:2px dashed #b9cef0;border-radius:15px;background:#f6f9ff;transition:background .2s,border-color .2s}
.imsa-dropzone:hover{background:#eef4ff;border-color:#7b9de2}
.imsa-dropzone>i{font-size:27px;color:#4b74d5}
.imsa-dropzone strong{font-size:14px;color:#234da1}
.imsa-dropzone small{font-size:11px;color:#778cae;max-width:400px;line-height:1.5}
.imsa-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}
.imsa-dropzone.is-uploading{opacity:.7;pointer-events:none}
.imsa-dropzone.small{min-height:118px;margin-top:15px}
.imsa-upload-progress{height:8px;border-radius:20px;background:#e3ebf7;overflow:hidden}
.imsa-upload-progress span{height:100%;background:linear-gradient(90deg,#275fda,#39bc9c);display:block;transition:width .2s ease}
.imsa-existing-media,.imsa-resource-item{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #deebdf;background:#f3fbf5;border-radius:13px;min-width:0}
.imsa-success-dot{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#d5f1df;color:#229153}
.imsa-existing-media>div,.imsa-resource-item>div{display:flex;flex-direction:column;min-width:0;flex:1;gap:4px}
.imsa-existing-media b,.imsa-resource-item strong{color:#286b4d;font-size:12px}
.imsa-existing-media small,.imsa-resource-item small{color:#668779;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.imsa-existing-media a,.imsa-resource-item a{font-size:11px;color:#2b61c3;font-weight:800;white-space:nowrap}
.imsa-media-preview video,.imsa-media-preview img{max-height:370px;width:100%;background:#0b1b32;object-fit:contain;border-radius:14px}
.imsa-media-preview a{color:#2b61c3;display:inline-flex;align-items:center;gap:8px;font-weight:750}
.imsa-optional-url,.imsa-publish-settings>label:not(.imsa-switch-row){display:flex;flex-direction:column;gap:8px;color:#4e6586;font-size:12px;font-weight:750}
.imsa-linked-banner{background:#e9f8ef;color:#25764d;font-weight:750;border-radius:11px;padding:11px 13px;margin-bottom:15px;font-size:12px}
.imsa-resource-list{display:flex;flex-direction:column;gap:8px}
.imsa-resource-item{background:#fbfdff;border-color:#e1eafa}
.imsa-resource-item strong{color:#2d456c}
.imsa-resource-symbol{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#edf3ff;color:#5272be}
.imsa-link-form{border-top:1px solid #edf1f8;margin-top:20px;padding-top:18px}
.imsa-link-form h4{font-size:13px;color:#2b436c;margin:0 0 13px}
.imsa-link-form>.btn{margin-top:14px}
.imsa-publish-settings{display:flex;flex-direction:column;gap:16px}
.imsa-publish-settings>p{margin-top:-12px!important}
.imsa-switch-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-top:1px solid #edf1f8}
.imsa-switch-row>span{display:flex;flex-direction:column;gap:5px}
.imsa-switch-row strong{color:#263b61;font-size:12px}
.imsa-switch-row small{line-height:1.4;color:#7a8eab;font-size:11px}
.imsa-switch-row input{flex:0 0 auto;width:18px;height:18px;accent-color:#3464dc}
.imsa-full{width:100%;justify-content:center}
.imsa-app.imsa-admin-ui .imsa-new-content :is(input,select,textarea){width:100%;box-sizing:border-box}
.imsa-app.imsa-admin-ui .imsa-new-content .imsa-switch-row input{width:18px}
.imsa-app.imsa-admin-ui .imsa-new-content label{min-width:0}
.imsa-app.imsa-admin-ui .imsa-new-content .btn i{margin-right:5px}
.imsa-app.imsa-admin-ui .imsa-new-content :is(.imsa-module-open,.imsa-editor-trail button):focus-visible{outline:3px solid #7fa6ff;outline-offset:3px}
.imsa-learn-class-image{width:100%;max-height:68vh;object-fit:contain;background:#101a2f;border-radius:13px}
.imsa-lesson-live-notice{display:flex;gap:13px;align-items:flex-start;flex-wrap:wrap;padding:19px;margin-bottom:19px;background:#f0f5ff;border:1px solid #d9e5fa;border-radius:14px;color:#27466e}
.imsa-lesson-live-notice>i{color:#3465d4;font-size:20px;padding:6px}
.imsa-lesson-live-notice>div{display:flex;flex:1 1 220px;flex-direction:column;gap:6px}
.imsa-lesson-live-notice b{font-size:15px;color:#1c3c77}
.imsa-lesson-live-notice span{font-size:13px;color:#3e6093}
.imsa-lesson-live-notice p{font-size:12px;line-height:1.45;color:#7189ab;margin:0}

@media(max-width:1160px){
  .imsa-lesson-editor-layout{grid-template-columns:minmax(0,1fr) 270px}
  .imsa-app.imsa-admin-ui .imsa-course-management-page .imsa-eval-split{grid-template-columns:1fr}
}
@media(max-width:920px){
  .imsa-lesson-editor-layout{grid-template-columns:1fr}
  .imsa-lesson-editor-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .imsa-module-gallery{grid-template-columns:1fr}
  .imsa-lesson-row{flex-wrap:wrap;gap:9px}
  .imsa-lesson-text{flex-basis:calc(100% - 105px)}
}
@media(max-width:650px){
  .imsa-app.imsa-admin-ui .imsa-course-management-surface{padding:17px 12px 50px!important}
  .imsa-app.imsa-admin-ui .imsa-course-management-page .workspace-pane{padding:15px!important}
  .imsa-app.imsa-admin-ui .imsa-new-content{padding:0!important}
  .imsa-page-section-head{align-items:flex-start;flex-direction:column}
  .imsa-lesson-editor-aside{grid-template-columns:1fr}
  .imsa-editor-card,.imsa-lesson-collection,.imsa-create-lesson-panel,.imsa-create-panel{padding:17px}
  .imsa-module-open{padding:19px 15px}
  .imsa-module-icon{flex-basis:42px;width:42px;height:42px;font-size:18px}
  .imsa-lesson-number{display:none}
  .imsa-card-toolbar{padding:11px}
  .imsa-lesson-row .btn{width:100%;order:5}
  .imsa-save-settings-footer{align-items:stretch;flex-direction:column}
}
