/* Visual reference: CPEIP/DocenteMás 2026. Keeps the platform's own identity. */
:root {
  --cpeip-blue: #075fc7;
  --cpeip-blue-dark: #123f86;
  --cpeip-blue-ink: #173f7a;
  --cpeip-blue-soft: #eaf3ff;
  --cpeip-blue-panel: #dcecff;
  --cpeip-line: #9fc3ee;
  --cpeip-page: #f3f7fd;
}
body { background: var(--cpeip-page) !important; }
.main { background: linear-gradient(180deg,#f8fbff 0,#f0f6ff 100%) !important; }
.topbar { background: rgba(255,255,255,.96) !important; border-bottom: 1px solid #d7e3f1 !important; }
.topbar-title h1,.topbar-title p { color: var(--cpeip-blue-ink) !important; }
.sidebar { background: linear-gradient(180deg,#105bc0,#143e8b) !important; }
.nav-btn { border: 1px solid rgba(255,255,255,.16) !important; }
.nav-btn:not(.active) { background: #fff !important; color: var(--cpeip-blue-ink) !important; }
.nav-btn:not(.active) span,.nav-btn:not(.active) strong,.nav-btn:not(.active) small { color: var(--cpeip-blue-ink) !important; }
.nav-btn.active { background: linear-gradient(135deg,#0871d9,#17459b) !important; color:#fff !important; box-shadow:0 8px 18px rgba(5,70,155,.24) !important; }

/* Core CPEIP-style content hierarchy */
.module-form,.planning-support,.expert-reference-tabs,.cpeip-rubric-shell { border-color:#b8d2f1 !important; }
.module-form { background: var(--cpeip-blue-soft) !important; border-radius: 16px !important; overflow:hidden; }
.module-title { background:#cfe3fb !important; color:var(--cpeip-blue-ink) !important; border-bottom:1px solid #9fc3ee !important; }
.module-body { background:#eaf3ff !important; }
.module-body .field,.module-body label,.module-body p,.module-body strong { color:#163b70 !important; }
.input,.select,.textarea,input[type="text"],input[type="date"],textarea,select { background:#fff !important; color:#17375f !important; border-color:#75a9df !important; }
.input:focus,.select:focus,.textarea:focus,input:focus,textarea:focus,select:focus { outline:3px solid rgba(0,102,204,.17) !important; border-color:#086bcf !important; }

/* Required contrast rule: every white tab/control uses blue lettering. */
:is(
  .tab,
  .home-section-tab,
  .premium-video-chapters button,
  .free-showcase-tabs button,
  .rubric-module-tabs button,
  .stage-tabs button,
  .experience-tabs button,
  .experience-rubric-tab > summary,
  .expert-reference-tabs > details > summary,
  .planning-window-btn,
  .cpeip-task > summary,
  .cpeip-indicator > summary,
  .btn.ghost,
  .btn.soft
) { color:var(--cpeip-blue-ink) !important; }
:is(
  .tab,
  .home-section-tab,
  .premium-video-chapters button,
  .free-showcase-tabs button,
  .rubric-module-tabs button,
  .stage-tabs button,
  .experience-tabs button,
  .planning-window-btn,
  .btn.ghost,
  .btn.soft
):not(.active):not([aria-selected="true"]) { background:#fff !important; border-color:#a7c5e9 !important; }
:is(
  .tab.active,
  .home-section-tab.active,
  .premium-video-chapters button.active,
  .free-showcase-tabs button.active,
  .rubric-module-tabs button.active,
  .stage-tabs button.active,
  .experience-tabs button.active,
  [role="tab"][aria-selected="true"]
) { background:linear-gradient(135deg,#0870d4,#17489e) !important; color:#fff !important; border-color:#075fc7 !important; }

/* Rubric drawers follow the screenshots: pale-blue band, white details, blue ink. */
.cpeip-rubric-shell { background:#f9fbff !important; }
.cpeip-rubric-head { padding-bottom:16px; border-bottom:1px solid #bfd5ee; }
.cpeip-rubric-head h3,.cpeip-rubric-head p,.cpeip-kicker { color:var(--cpeip-blue-ink) !important; }
.cpeip-format-map { background:linear-gradient(90deg,#0872d3,#213577) !important; }
.cpeip-task { border-color:#9fc3ee !important; }
.cpeip-task > summary { background:#dcecff !important; color:var(--cpeip-blue-ink) !important; }
.cpeip-task[open] > summary { background:#cfe3fb !important; }
.cpeip-task > summary strong,.cpeip-task > summary small,.cpeip-task > summary em { color:var(--cpeip-blue-ink) !important; }
.cpeip-indicator { border-color:#b8d2ee !important; }
.cpeip-indicator > summary { background:#fff !important; color:var(--cpeip-blue-ink) !important; }
.cpeip-indicator[open] > summary { background:#e7f1ff !important; }
.cpeip-indicator > summary strong { color:var(--cpeip-blue-ink) !important; }
.cpeip-indicator-body { background:#eef5ff !important; }
.cpeip-indicator-body > div { border:1px solid #c3d9f1; box-shadow:none !important; }
.cpeip-indicator-body small { color:#285b9c !important; }

/* Status language inspired by the official interface. */
.pill { border-radius:999px !important; font-weight:850 !important; }
.pill.green { background:#dff7ec !important; color:#176b4e !important; }
.pill.yellow { background:#fff0bf !important; color:#855b00 !important; }
.warning { border-color:#efc35b !important; background:#fff7df !important; color:#654f16 !important; }
.notice,.helpbox { border-color:#9fc3ee !important; background:#edf6ff !important; color:#1d4d86 !important; }

@media (max-width:760px) {
  .topbar { background:#fff !important; }
  .sidebar { background:linear-gradient(180deg,#105bc0,#143e8b) !important; }
  :is(.tab,.home-section-tab,.planning-window-btn,.btn.ghost,.btn.soft) { min-height:44px; }
}
