/* Tecsa Center blue shell and exam UI */
.tckb-center-module-body {
  --tc-blue-950: #06192d;
  --tc-blue-900: #082440;
  --tc-blue-850: #0a2d50;
  --tc-blue-800: #0d385f;
  --tc-blue-700: #125083;
  --tc-blue-600: #1774b8;
  --tc-blue-500: #1f91d2;
  --tc-cyan: #38c8f4;
  --tc-white: #f7fbff;
  --tc-muted: #b8d0e6;
  --tc-border: rgba(150, 207, 244, .22);
  --tc-surface: rgba(12, 48, 82, .93);
  --tc-surface-soft: rgba(20, 69, 112, .74);
  --tc-shadow: 0 20px 48px rgba(3, 21, 39, .32), inset 0 1px 0 rgba(255, 255, 255, .06);
  margin: 0;
  min-height: 100vh;
  color: var(--tc-white);
  background:
    radial-gradient(circle at 85% 4%, rgba(56, 200, 244, .17), transparent 28%),
    radial-gradient(circle at 12% 28%, rgba(31, 145, 210, .12), transparent 34%),
    linear-gradient(155deg, var(--tc-blue-950) 0%, var(--tc-blue-900) 45%, #0a3154 100%);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.tckb-center-module-body *,
.tckb-center-module-body *::before,
.tckb-center-module-body *::after { box-sizing: border-box; }

.tckb-center-module-body a { color: #91e2ff; }
.tckb-center-module-body button,
.tckb-center-module-body input,
.tckb-center-module-body textarea,
.tckb-center-module-body select { font: inherit; }

/* Existing catalog: replace the white-only appearance with the blue Tecsa Center surface. */
.tckb-center-module-body .tckb-center-catalog {
  width: 100%;
  max-width: 1500px;
  padding: 24px clamp(14px, 2.8vw, 42px) 54px;
  color: var(--tc-white);
}

.tckb-center-module-body .tckb-center-catalog__hero,
.tckb-center-module-body .tckb-center-course-card,
.tckb-center-module-body .tckb-center-admin-card,
.tckb-center-module-body .tckb-center-denied {
  color: var(--tc-white);
  border: 1px solid var(--tc-border);
  background: linear-gradient(145deg, rgba(18, 66, 108, .96), rgba(8, 38, 68, .96));
  box-shadow: var(--tc-shadow);
}

.tckb-center-module-body .tckb-center-catalog__hero {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  padding: clamp(22px, 3vw, 36px);
  border-radius: 24px;
}

.tckb-center-module-body .tckb-center-catalog h1,
.tckb-center-module-body .tckb-center-catalog h2,
.tckb-center-module-body .tckb-center-catalog strong { color: var(--tc-white); }
.tckb-center-module-body .tckb-center-catalog p,
.tckb-center-module-body .tckb-center-catalog__note span { color: var(--tc-muted); }

.tckb-center-module-body .tckb-center-catalog__note {
  border: 1px solid rgba(93, 208, 246, .25);
  background: linear-gradient(145deg, rgba(24, 91, 141, .62), rgba(12, 52, 88, .76));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 12px 30px rgba(3, 22, 40, .18);
}

.tckb-center-module-body .tckb-center-kicker {
  color: #dff8ff;
  background: rgba(56, 200, 244, .14);
  border: 1px solid rgba(56, 200, 244, .3);
}

.tckb-center-module-body .tckb-center-course-grid {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 18px;
}

.tckb-center-module-body .tckb-center-course-card {
  min-height: 330px;
  border-radius: 22px;
  padding: 24px;
}

.tckb-center-module-body .tckb-center-course-card::after {
  background: radial-gradient(circle, rgba(56, 200, 244, .16), transparent 70%);
}

.tckb-center-module-body .tckb-center-course-card__icon {
  color: #f9fdff;
  background: linear-gradient(145deg, #2ec5ef, #1679bd);
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: 0 14px 30px rgba(5, 38, 67, .34), inset 0 1px 0 rgba(255,255,255,.25);
}

.tckb-center-module-body .tckb-center-course-card > span { color: #73dfff; }
.tckb-center-module-body .tckb-center-course-card h2 { color: var(--tc-white); }
.tckb-center-module-body .tckb-center-course-card p { color: var(--tc-muted); }

.tckb-center-module-body .tckb-center-course-card__actions a,
.tckb-center-module-body .tckb-center-admin-card > a,
.tckb-center-module-body .tckb-exam-primary {
  color: #ffffff;
  background: #168ecb;
  border: 1px solid rgba(151, 229, 255, .22);
  box-shadow: 0 10px 22px rgba(3, 31, 53, .28), inset 0 1px 0 rgba(255,255,255,.16);
  transition: transform .16s ease, background .16s ease, box-shadow .16s ease;
}

.tckb-center-module-body .tckb-center-course-card__actions a:hover,
.tckb-center-module-body .tckb-center-admin-card > a:hover,
.tckb-center-module-body .tckb-exam-primary:hover {
  transform: translateY(-1px);
  background: #1ba5e5;
  box-shadow: 0 14px 28px rgba(3, 31, 53, .35), inset 0 1px 0 rgba(255,255,255,.22);
}

.tckb-center-module-body .tckb-center-course-card__actions a.is-secondary,
.tckb-center-module-body .tckb-center-course-card__actions a.is-map {
  color: #dff7ff;
  background: rgba(39, 103, 153, .5);
  border: 1px solid rgba(123, 213, 247, .22);
}

.tckb-center-module-body .tckb-center-admin-card {
  border-radius: 20px;
}

.tckb-exam-card-status {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin-top: auto;
  padding: 5px 10px;
  border-radius: 999px;
  color: #d9efff;
  background: rgba(159, 202, 232, .12);
  border: 1px solid rgba(159, 202, 232, .2);
  font-size: 12px;
  font-weight: 800;
}
.tckb-exam-card-status.is-active { color: #d9f8ff; background: rgba(39, 184, 226, .16); border-color: rgba(67, 212, 250, .3); }
.tckb-exam-card-status.is-success { color: #d8fff0; background: rgba(39, 188, 133, .16); border-color: rgba(92, 225, 177, .28); }
.tckb-center-module-body .tckb-center-course-card--exam { display: flex; flex-direction: column; }
.tckb-center-module-body .tckb-center-course-card--exam .tckb-center-course-card__actions { margin-top: 18px; }

/* Existing course and instruction screens in the same standard blue design. */
.tckb-center-module-body .tckb {
  min-height: calc(100vh - 72px);
  max-width: 1500px;
  margin: 0 auto;
  padding: 24px clamp(14px, 2.8vw, 42px) 54px;
  color: var(--tc-white);
  background: transparent;
  border-radius: 0;
}

.tckb-center-module-body .tckb h1,
.tckb-center-module-body .tckb h2,
.tckb-center-module-body .tckb h3,
.tckb-center-module-body .tckb strong,
.tckb-center-module-body .tckb label { color: var(--tc-white); }
.tckb-center-module-body .tckb p,
.tckb-center-module-body .tckb span,
.tckb-center-module-body .tckb li { color: var(--tc-muted); }

.tckb-center-module-body .tckb-hero,
.tckb-center-module-body .tckb-card,
.tckb-center-module-body .tckb-sidebar,
.tckb-center-module-body .tckb-detail,
.tckb-center-module-body .tckb-role-card,
.tckb-center-module-body .tckb-training-view,
.tckb-center-module-body .tckb-training-plan,
.tckb-center-module-body .tckb-training-lesson,
.tckb-center-module-body .tckb-training-block,
.tckb-center-module-body .tckb-training-subblock,
.tckb-center-module-body .tckb-training-quiz,
.tckb-center-module-body .tckb-map-view,
.tckb-center-module-body .tckb-map-group,
.tckb-center-module-body .tckb-map-node,
.tckb-center-module-body .tckb-settings-panel,
.tckb-center-module-body .tckb-settings-front__notice,
.tckb-center-module-body .tckb-admin-front__panel {
  color: var(--tc-white);
  background: linear-gradient(145deg, rgba(18, 66, 108, .94), rgba(8, 38, 68, .94));
  border-color: var(--tc-border);
  box-shadow: var(--tc-shadow);
}

.tckb-center-module-body .tckb-hero { background: linear-gradient(135deg, #0d4f84, #0b2e50); }
.tckb-center-module-body .tckb-card__tags span,
.tckb-center-module-body .tckb-kicker,
.tckb-center-module-body .tckb-training-plan__status,
.tckb-center-module-body .tckb-map-node__meta {
  color: #dff8ff;
  background: rgba(56, 200, 244, .14);
}

.tckb-center-module-body .tckb-search input,
.tckb-center-module-body .tckb input[type="text"],
.tckb-center-module-body .tckb input[type="search"],
.tckb-center-module-body .tckb input[type="email"],
.tckb-center-module-body .tckb input[type="url"],
.tckb-center-module-body .tckb input[type="number"],
.tckb-center-module-body .tckb textarea,
.tckb-center-module-body .tckb select,
.tckb-center-module-body .tckb-settings-front input,
.tckb-center-module-body .tckb-settings-front textarea,
.tckb-center-module-body .tckb-settings-front select {
  color: #12304b;
  background: #ffffff;
  border-color: #c7dcea;
}

.tckb-center-module-body .tckb-filters button,
.tckb-center-module-body .tckb-sidebar button,
.tckb-center-module-body .tckb-back,
.tckb-center-module-body .tckb-training-button,
.tckb-center-module-body .tckb-mini-button,
.tckb-center-module-body .tckb-admin-front__nav a,
.tckb-center-module-body .tckb-front-submit {
  color: #eaf8ff;
  background: rgba(27, 92, 142, .66);
  border-color: rgba(135, 215, 248, .22);
}

.tckb-center-module-body .tckb-filters button.is-active,
.tckb-center-module-body .tckb-sidebar button.is-active,
.tckb-center-module-body .tckb-training-button:not(.tckb-training-button--ghost),
.tckb-center-module-body .tckb-admin-front__nav a.is-active,
.tckb-center-module-body .tckb-front-submit {
  color: #ffffff;
  background: #168ecb;
  border-color: #3ec6ed;
}

.tckb-center-module-body .tckb-admin-front,
.tckb-center-module-body .tckb-settings-front {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding: 24px clamp(14px, 2.8vw, 42px) 54px;
  color: var(--tc-white);
  background: transparent;
}

.tckb-center-module-body .tckb-admin-front__head {
  color: var(--tc-white);
  background: linear-gradient(145deg, rgba(18, 66, 108, .96), rgba(8, 38, 68, .96));
  border: 1px solid var(--tc-border);
  box-shadow: var(--tc-shadow);
}
.tckb-center-module-body .tckb-admin-front__head h1,
.tckb-center-module-body .tckb-admin-front__head p { color: var(--tc-white); }
.tckb-center-module-body .tckb-admin-front__head p { color: var(--tc-muted); }
.tckb-center-module-body .tckb-admin-front__return { color: #dff8ff; background: rgba(31, 114, 174, .56); }
.tckb-center-module-body .tckb-admin-front__nav { background: rgba(7, 31, 55, .62); border: 1px solid var(--tc-border); }
.tckb-center-module-body .tckb-front-table th { color: #dff7ff; background: rgba(19, 77, 123, .9); }
.tckb-center-module-body .tckb-front-table td { color: #d9eaf7; background: rgba(10, 43, 75, .72); border-color: var(--tc-border); }
.tckb-center-module-body .tckb-b24-users-table th { color: #dff7ff; }
.tckb-center-module-body .tckb-b24-users-table td { color: #d7e9f7; }

/* Exams */
.tckb-exam-page,
.tckb-exam-admin {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding: 24px clamp(14px, 2.8vw, 42px) 54px;
  color: var(--tc-white);
}

.tckb-exam-hero,
.tckb-exam-admin__hero,
.tckb-exam-admin-card,
.tckb-exam-results-group,
.tckb-exam-state,
.tckb-exam-intro,
.tckb-exam-work,
.tckb-exam-finish,
.tckb-exam-live-result {
  border: 1px solid var(--tc-border);
  background: linear-gradient(145deg, rgba(18, 66, 108, .96), rgba(8, 38, 68, .97));
  border-radius: 22px;
  box-shadow: var(--tc-shadow);
}

.tckb-exam-hero,
.tckb-exam-admin__hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(22px, 3vw, 36px);
  overflow: hidden;
  position: relative;
}
.tckb-exam-hero::after,
.tckb-exam-admin__hero::after {
  content: "";
  position: absolute;
  width: 280px;
  height: 280px;
  right: -90px;
  top: -140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(56, 200, 244, .2), transparent 70%);
  pointer-events: none;
}
.tckb-exam-hero > div,
.tckb-exam-admin__hero > div,
.tckb-exam-admin__hero > nav { position: relative; z-index: 1; }
.tckb-exam-hero h1,
.tckb-exam-admin__hero h1 { margin: 10px 0 8px; color: var(--tc-white); font-size: clamp(29px, 4vw, 46px); line-height: 1.08; }
.tckb-exam-hero p,
.tckb-exam-admin__hero p { max-width: 850px; margin: 0; color: var(--tc-muted); font-size: 16px; line-height: 1.55; }

.tckb-exam-person {
  min-width: 250px;
  padding: 16px 18px;
  border-radius: 17px;
  border: 1px solid rgba(126, 213, 247, .22);
  background: rgba(17, 80, 128, .52);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.tckb-exam-person small,
.tckb-exam-person strong,
.tckb-exam-person span { display: block; }
.tckb-exam-person small { color: #75dfff; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.tckb-exam-person strong { margin: 5px 0 3px; color: var(--tc-white); font-size: 18px; }
.tckb-exam-person span { color: var(--tc-muted); font-size: 13px; }

.tckb-exam-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0;
}
.tckb-exam-summary-grid article,
.tckb-exam-current__stats > div {
  min-width: 0;
  padding: 16px 18px;
  border: 1px solid var(--tc-border);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(18, 66, 108, .86), rgba(9, 42, 73, .9));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 10px 24px rgba(3, 23, 42, .2);
}
.tckb-exam-summary-grid small,
.tckb-exam-current__stats small { display: block; color: #8ccce9; font-size: 12px; font-weight: 700; }
.tckb-exam-summary-grid strong,
.tckb-exam-current__stats strong { display: block; margin-top: 5px; color: var(--tc-white); font-size: 18px; overflow-wrap: anywhere; }

.tckb-exam-state,
.tckb-exam-intro,
.tckb-exam-finish,
.tckb-exam-live-result { padding: clamp(22px, 3vw, 34px); }
.tckb-exam-state h1,
.tckb-exam-state h2,
.tckb-exam-intro h2,
.tckb-exam-finish h2,
.tckb-exam-live-result h2 { margin: 0 0 8px; color: var(--tc-white); }
.tckb-exam-state p,
.tckb-exam-intro p,
.tckb-exam-finish p,
.tckb-exam-live-result p { color: var(--tc-muted); line-height: 1.55; }

.tckb-exam-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}
.tckb-exam-intro > div { max-width: 920px; }
.tckb-exam-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 13px;
  cursor: pointer;
  font-weight: 800;
}
.tckb-exam-primary:disabled { cursor: not-allowed; opacity: .55; transform: none; }

.tckb-exam-countdown {
  display: inline-flex;
  margin-top: 16px;
  padding: 10px 14px;
  border-radius: 12px;
  color: #dff8ff;
  background: rgba(39, 143, 201, .25);
  border: 1px solid rgba(81, 205, 245, .26);
  font-size: 21px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.tckb-exam-work { padding: 20px; }
.tckb-exam-work__head {
  position: sticky;
  top: 8px;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  margin-bottom: 16px;
  border-radius: 16px;
  color: var(--tc-white);
  background: rgba(7, 31, 55, .94);
  border: 1px solid rgba(102, 201, 239, .2);
  backdrop-filter: blur(14px);
  box-shadow: 0 12px 28px rgba(2, 19, 35, .28);
}
.tckb-exam-work__head span { color: #65d9ff; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.tckb-exam-work__head h2 { margin: 3px 0 0; color: var(--tc-white); font-size: 20px; }
.tckb-exam-timer { min-width: 155px; padding: 9px 13px; border-radius: 12px; text-align: right; background: rgba(24, 105, 160, .42); border: 1px solid rgba(92, 211, 249, .22); }
.tckb-exam-timer small { display: block; color: #93d9f2; }
.tckb-exam-timer strong { display: block; color: var(--tc-white); font-size: 20px; font-variant-numeric: tabular-nums; }
.tckb-exam-timer.is-urgent { background: rgba(171, 65, 65, .28); border-color: rgba(255, 153, 153, .35); }

.tckb-exam-questions { display: grid; gap: 14px; }
.tckb-exam-question {
  min-width: 0;
  margin: 0;
  padding: 20px;
  border: 1px solid var(--tc-border);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(22, 74, 117, .83), rgba(9, 42, 73, .9));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(3, 24, 43, .2);
}
.tckb-exam-question legend { width: 100%; padding: 0; }
.tckb-exam-question legend > span { display: inline-flex; color: #6cdbff; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .045em; }
.tckb-exam-question legend > small { float: right; color: #9bbbd2; }
.tckb-exam-question legend > strong { display: block; clear: both; padding-top: 7px; color: var(--tc-white); font-size: 19px; line-height: 1.4; }
.tckb-exam-options { display: grid; gap: 9px; margin-top: 15px; }
.tckb-exam-option {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  min-height: 50px;
  padding: 10px 13px;
  border-radius: 13px;
  color: #dcecf8;
  background: rgba(7, 34, 59, .58);
  border: 1px solid rgba(131, 190, 225, .18);
  cursor: pointer;
  transition: transform .14s ease, border-color .14s ease, background .14s ease;
}
.tckb-exam-option:hover { transform: translateY(-1px); border-color: rgba(83, 211, 250, .45); background: rgba(18, 77, 120, .72); }
.tckb-exam-option.is-selected { border-color: #45c9f2; background: rgba(21, 124, 180, .4); box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.tckb-exam-option input { position: absolute; opacity: 0; pointer-events: none; }
.tckb-exam-option__mark { width: 20px; height: 20px; border-radius: 50%; border: 2px solid #77aeca; background: rgba(255,255,255,.03); box-shadow: inset 0 0 0 4px rgba(6, 30, 52, .75); }
.tckb-exam-option.is-selected .tckb-exam-option__mark { border-color: #6de0ff; background: #47c9ed; }
.tckb-exam-option__text { color: #e9f5fd; line-height: 1.42; }

.tckb-exam-loader { padding: 28px; border-radius: 15px; color: var(--tc-muted); text-align: center; background: rgba(8, 38, 67, .62); }
.tckb-exam-submit-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--tc-border); }
.tckb-exam-submit-row [data-tckb-exam-progress] { color: var(--tc-muted); font-weight: 700; }
.tckb-exam-submit-row [data-tckb-exam-progress].is-complete { color: #83f0c1; }

.tckb-exam-finish,
.tckb-exam-live-result { text-align: center; }
.tckb-exam-finish > span,
.tckb-exam-live-result > span { display: inline-flex; padding: 6px 11px; border-radius: 999px; color: #dff8ff; background: rgba(64, 194, 235, .16); font-weight: 800; }
.tckb-exam-finish > strong,
.tckb-exam-live-result > strong { display: block; margin: 8px 0; color: var(--tc-white); font-size: clamp(52px, 8vw, 84px); line-height: 1; }
.tckb-exam-finish.is-passed,
.tckb-exam-live-result.is-passed { border-color: rgba(89, 229, 174, .36); background: linear-gradient(145deg, rgba(16, 93, 77, .92), rgba(7, 48, 55, .96)); }
.tckb-exam-finish.is-failed,
.tckb-exam-live-result.is-failed,
.tckb-exam-live-result.is-error { border-color: rgba(255, 148, 148, .34); background: linear-gradient(145deg, rgba(113, 47, 62, .9), rgba(52, 27, 47, .96)); }

/* Admin */
.tckb-exam-admin__hero nav { display: flex; flex-wrap: wrap; gap: 8px; }
.tckb-exam-admin__hero nav a { display: inline-flex; min-height: 40px; align-items: center; padding: 0 13px; border-radius: 11px; color: #dff7ff; text-decoration: none; background: rgba(18, 85, 135, .58); border: 1px solid rgba(116, 213, 248, .2); }
.tckb-exam-admin__hero nav a.is-active { color: #ffffff; background: #168ecb; border-color: #49caf0; }

.tckb-exam-admin-notice { margin: 14px 0; padding: 13px 16px; border-radius: 13px; color: #eef9ff; background: rgba(20, 103, 159, .5); border: 1px solid rgba(107, 210, 246, .28); }
.tckb-exam-admin-notice.is-error { background: rgba(139, 51, 64, .55); border-color: rgba(255, 145, 158, .32); }
.tckb-exam-admin-notice.is-warning { background: rgba(136, 99, 32, .54); border-color: rgba(255, 211, 118, .3); }

.tckb-exam-admin-card { margin-top: 16px; padding: clamp(18px, 2.5vw, 28px); }
.tckb-exam-admin-card__title { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 16px; margin-bottom: 18px; border-bottom: 1px solid var(--tc-border); }
.tckb-exam-admin-card__title span { color: #63d8ff; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.tckb-exam-admin-card__title h2 { margin: 4px 0 0; color: var(--tc-white); font-size: 25px; }
.tckb-exam-admin-card__title > strong { color: #dff8ff; padding: 8px 11px; border-radius: 11px; background: rgba(31, 122, 181, .36); border: 1px solid rgba(103, 214, 250, .2); }

.tckb-exam-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.tckb-exam-form-grid label { display: flex; flex-direction: column; gap: 7px; min-width: 0; color: #dff1fd; font-weight: 700; }
.tckb-exam-form-grid label.is-wide { grid-column: 1 / -1; }
.tckb-exam-form-grid label > span { color: #dff1fd; }
.tckb-exam-form-grid input,
.tckb-exam-form-grid textarea,
.tckb-user-picker input[type="search"] {
  width: 100%;
  min-height: 45px;
  padding: 10px 12px;
  border-radius: 11px;
  color: #12304b;
  background: #ffffff;
  border: 1px solid #c5ddeb;
  outline: none;
}
.tckb-exam-form-grid textarea { resize: vertical; }
.tckb-exam-form-grid input:focus,
.tckb-exam-form-grid textarea:focus,
.tckb-user-picker input[type="search"]:focus { border-color: #42bde8; box-shadow: 0 0 0 3px rgba(66, 189, 232, .2); }
.tckb-exam-form-grid label small { color: #99bad2; font-weight: 500; }
.tckb-field-suffix { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; overflow: hidden; border-radius: 11px; background: #ffffff; border: 1px solid #c5ddeb; }
.tckb-field-suffix input { border: 0; border-radius: 0; }
.tckb-field-suffix i { padding: 0 12px; color: #47728f; font-style: normal; font-weight: 800; }

.tckb-user-picker { margin-top: 18px; overflow: hidden; border-radius: 17px; border: 1px solid var(--tc-border); background: rgba(7, 35, 61, .5); }
.tckb-user-picker > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px; border-bottom: 1px solid var(--tc-border); }
.tckb-user-picker > header h3 { margin: 0 0 3px; color: var(--tc-white); }
.tckb-user-picker > header p { margin: 0; color: var(--tc-muted); }
.tckb-user-picker > header > div:last-child { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.tckb-user-picker > header input[type="search"] { width: min(300px, 100%); }
.tckb-user-picker button,
.tckb-exam-current__actions a,
.tckb-exam-current__actions button,
.tckb-result-reset button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 39px;
  padding: 0 12px;
  border-radius: 10px;
  color: #eaf8ff;
  background: rgba(25, 98, 151, .58);
  border: 1px solid rgba(119, 209, 244, .22);
  cursor: pointer;
  text-decoration: none;
  font-weight: 700;
}
.tckb-user-picker__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 9px; max-height: 430px; overflow: auto; padding: 12px; }
.tckb-user-option { display: grid; grid-template-columns: 22px 38px minmax(0, 1fr); gap: 10px; align-items: center; min-width: 0; padding: 10px; border-radius: 12px; color: #e8f4fc; background: rgba(14, 61, 100, .62); border: 1px solid rgba(126, 192, 227, .15); cursor: pointer; }
.tckb-user-option:hover,
.tckb-user-option.is-selected { border-color: rgba(70, 207, 248, .5); background: rgba(21, 102, 155, .58); }
.tckb-user-option input { width: 18px; height: 18px; accent-color: #24aee4; }
.tckb-user-option__avatar,
.tckb-result-avatar { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; color: #ffffff; background: linear-gradient(145deg, #33bee9, #176ca9); font-weight: 900; box-shadow: inset 0 1px 0 rgba(255,255,255,.2); }
.tckb-user-option strong,
.tckb-user-option small { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tckb-user-option strong { color: #f4fbff; }
.tckb-user-option small { margin-top: 2px; color: #9fc2da; font-size: 12px; }
.tckb-user-picker > footer { padding: 10px 15px; color: #cbe9fa; border-top: 1px solid var(--tc-border); }

.tckb-exam-launch-actions { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 18px; }
.tckb-exam-launch-actions p { max-width: 900px; margin: 0; color: var(--tc-muted); }
.tckb-exam-warning { padding: 16px; border-radius: 13px; color: #fff4d5; background: rgba(136, 96, 28, .45); border: 1px solid rgba(255, 210, 113, .3); }
.tckb-exam-warning strong { color: #fff8e4; }
.tckb-exam-warning p { color: #f4deb4; }

.tckb-exam-current__stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
.tckb-exam-current__actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; margin-top: 14px; }
.tckb-exam-current__actions form { margin: 0; }
.tckb-exam-current__actions button { background: rgba(128, 54, 68, .55); border-color: rgba(255, 146, 163, .23); }
.tckb-status-pill { display: inline-flex; padding: 6px 10px; border-radius: 999px; color: #dff8ff; background: rgba(30, 139, 199, .2); border: 1px solid rgba(84, 210, 248, .26); }
.tckb-status-pill.is-closed { color: #c4d5e2; background: rgba(109, 135, 154, .17); }

/* Results accordions */
.tckb-exam-results-group { margin-top: 16px; overflow: hidden; }
.tckb-exam-results-group > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 22px; border-bottom: 1px solid var(--tc-border); }
.tckb-exam-results-group > header span { color: #60d7ff; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.tckb-exam-results-group > header h2 { margin: 4px 0; color: var(--tc-white); }
.tckb-exam-results-group > header p { margin: 0; color: var(--tc-muted); }
.tckb-exam-results-group > header > div:last-child { text-align: right; }
.tckb-exam-results-group > header > div:last-child strong { display: block; color: var(--tc-white); font-size: 24px; }
.tckb-exam-results-group > header > div:last-child small { color: var(--tc-muted); }
.tckb-exam-result-list { display: grid; gap: 8px; padding: 12px; }
.tckb-exam-result-person { overflow: hidden; border-radius: 14px; border: 1px solid rgba(120, 195, 233, .16); background: rgba(7, 35, 61, .55); }
.tckb-exam-result-person[open] { border-color: rgba(75, 204, 246, .34); background: rgba(9, 43, 73, .78); }
.tckb-exam-result-person summary { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto 24px; align-items: center; gap: 11px; padding: 12px 14px; cursor: pointer; list-style: none; }
.tckb-exam-result-person summary::-webkit-details-marker { display: none; }
.tckb-result-name strong,
.tckb-result-name small { display: block; }
.tckb-result-name strong { color: #f2f9ff; }
.tckb-result-name small { margin-top: 2px; color: #99bbd2; }
.tckb-result-score { min-width: 54px; padding: 7px 9px; border-radius: 10px; color: #dfeffc; text-align: center; background: rgba(92, 126, 151, .18); font-weight: 900; }
.tckb-result-score.is-passed { color: #d7ffed; background: rgba(34, 171, 117, .2); }
.tckb-result-score.is-failed { color: #ffe1e5; background: rgba(190, 66, 84, .22); }
.tckb-result-chevron { color: #9cdcf3; font-size: 22px; transition: transform .18s ease; }
.tckb-exam-result-person[open] .tckb-result-chevron { transform: rotate(180deg); }
.tckb-result-body { padding: 0 14px 15px; border-top: 1px solid var(--tc-border); }
.tckb-result-meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; padding: 12px 0; }
.tckb-result-meta > span { padding: 10px 12px; border-radius: 11px; background: rgba(19, 75, 117, .48); }
.tckb-result-meta small,
.tckb-result-meta strong { display: block; }
.tckb-result-meta small { color: #91bdd7; }
.tckb-result-meta strong { margin-top: 2px; color: #edf8ff; }
.tckb-answer-review { display: grid; gap: 8px; }
.tckb-answer-review article { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 10px; padding: 13px; border-radius: 12px; background: rgba(10, 48, 80, .7); border: 1px solid rgba(128, 195, 229, .16); }
.tckb-answer-review article.is-correct { border-color: rgba(88, 224, 170, .27); background: rgba(21, 94, 74, .44); }
.tckb-answer-review article.is-wrong { border-color: rgba(255, 139, 155, .25); background: rgba(107, 44, 58, .4); }
.tckb-answer-review__icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: #ffffff; background: rgba(37, 171, 122, .55); font-weight: 900; }
.tckb-answer-review .is-wrong .tckb-answer-review__icon { background: rgba(196, 67, 85, .62); }
.tckb-answer-review small { color: #9ed1e8; }
.tckb-answer-review h3 { margin: 3px 0 8px; color: #f3faff; font-size: 16px; line-height: 1.42; }
.tckb-answer-review p { margin: 4px 0; color: #c7ddeb; }
.tckb-answer-review b { color: #f1f9ff; }
.tckb-exam-calendar-error { margin-bottom: 10px; padding: 10px 12px; border-radius: 10px; color: #ffe2c2; background: rgba(145, 81, 28, .45); }
.tckb-exam-no-answers { padding: 16px; border-radius: 11px; color: var(--tc-muted); background: rgba(8, 39, 67, .54); }
.tckb-result-reset { display: flex; justify-content: flex-end; margin-top: 10px; }
.tckb-result-reset button { color: #ffe8ec; background: rgba(128, 54, 68, .5); border-color: rgba(255, 146, 163, .23); }

[hidden] { display: none !important; }
.tckb-center-module-body .is-loading { cursor: wait; }

@media (max-width: 980px) {
  .tckb-center-module-body .tckb-center-catalog__hero,
  .tckb-exam-hero,
  .tckb-exam-admin__hero { grid-template-columns: 1fr; flex-direction: column; align-items: stretch; }
  .tckb-exam-person { min-width: 0; }
  .tckb-exam-summary-grid,
  .tckb-exam-current__stats,
  .tckb-result-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tckb-exam-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tckb-user-picker > header { align-items: stretch; flex-direction: column; }
  .tckb-user-picker > header > div:last-child { justify-content: flex-start; }
}

@media (max-width: 680px) {
  .tckb-center-module-body .tckb-center-catalog,
  .tckb-center-module-body .tckb,
  .tckb-center-module-body .tckb-settings-front,
  .tckb-center-module-body .tckb-admin-front,
  .tckb-exam-page,
  .tckb-exam-admin { padding: 14px 11px 34px; }
  .tckb-center-module-body .tckb-center-course-grid { grid-template-columns: 1fr; }
  .tckb-center-module-body .tckb-center-course-card { min-height: 0; padding: 18px; }
  .tckb-exam-hero,
  .tckb-exam-admin__hero,
  .tckb-exam-admin-card,
  .tckb-exam-state,
  .tckb-exam-intro,
  .tckb-exam-finish,
  .tckb-exam-live-result { border-radius: 17px; }
  .tckb-exam-hero,
  .tckb-exam-admin__hero { padding: 19px; }
  .tckb-exam-hero h1,
  .tckb-exam-admin__hero h1 { font-size: 28px; }
  .tckb-exam-summary-grid,
  .tckb-exam-current__stats,
  .tckb-result-meta,
  .tckb-exam-form-grid { grid-template-columns: 1fr; }
  .tckb-exam-intro,
  .tckb-exam-submit-row,
  .tckb-exam-launch-actions,
  .tckb-exam-results-group > header { align-items: stretch; flex-direction: column; }
  .tckb-exam-intro .tckb-exam-primary,
  .tckb-exam-submit-row .tckb-exam-primary,
  .tckb-exam-launch-actions .tckb-exam-primary { width: 100%; }
  .tckb-exam-work { padding: 10px; }
  .tckb-exam-work__head { position: static; align-items: stretch; flex-direction: column; padding: 13px; }
  .tckb-exam-timer { min-width: 0; text-align: left; }
  .tckb-exam-question { padding: 15px; }
  .tckb-exam-question legend > small { float: none; display: block; margin-top: 3px; }
  .tckb-exam-question legend > strong { font-size: 17px; }
  .tckb-user-picker__grid { grid-template-columns: 1fr; max-height: 360px; }
  .tckb-user-picker > header > div:last-child { display: grid; grid-template-columns: 1fr 1fr; }
  .tckb-user-picker > header input[type="search"] { grid-column: 1 / -1; width: 100%; }
  .tckb-exam-result-person summary { grid-template-columns: 38px minmax(0, 1fr) auto; }
  .tckb-result-chevron { display: none; }
  .tckb-result-score { min-width: 46px; }
  .tckb-answer-review article { grid-template-columns: 28px minmax(0, 1fr); }
}

/* UI 2.0 integration inside the native Tecsa Center shell. */
.tckb-center-workspace,
.tckb-center-workspace *,
.tckb-center-module-body,
.tckb-center-module-body * {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.tckb-center-workspace {
  width: 100%;
  min-width: 0;
  min-height: calc(100vh - 58px);
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 0%, rgba(59, 111, 255, .17), transparent 28%),
    radial-gradient(circle at 18% 26%, rgba(31, 145, 210, .11), transparent 34%),
    linear-gradient(155deg, #061a34 0%, #082440 45%, #0a3154 100%);
}

.tckb-center-workspace .tckb-center-catalog,
.tckb-center-workspace .tckb,
.tckb-center-workspace .tckb-exam-page,
.tckb-center-workspace .tckb-exam-admin,
.tckb-center-workspace .tckb-admin-front,
.tckb-center-workspace .tckb-settings-front {
  max-width: none;
}

.tckb-center-workspace .tckb-center-catalog__hero,
.tckb-center-workspace .tckb-exam-hero,
.tckb-center-workspace .tckb-exam-admin__hero,
.tckb-center-workspace .tckb-admin-front__head {
  background:
    linear-gradient(135deg, rgba(20, 66, 112, .98), rgba(7, 37, 71, .98));
  border-color: rgba(106, 176, 244, .28);
  box-shadow:
    0 18px 44px rgba(1, 15, 34, .30),
    inset 0 1px 0 rgba(255, 255, 255, .08);
}

.tckb-center-workspace .tckb-center-catalog h1,
.tckb-center-workspace .tckb-exam-hero h1,
.tckb-center-workspace .tckb-exam-admin__hero h1,
.tckb-center-workspace .tckb-admin-front__head h1 {
  font-size: clamp(28px, 3vw, 34px);
  letter-spacing: -.02em;
}

.tckb-center-workspace .tckb-center-course-card,
.tckb-center-workspace .tckb-center-admin-card,
.tckb-center-workspace .tckb-exam-admin-card,
.tckb-center-workspace .tckb-exam-results-group,
.tckb-center-workspace .tckb-exam-state,
.tckb-center-workspace .tckb-exam-intro,
.tckb-center-workspace .tckb-exam-work,
.tckb-center-workspace .tckb-exam-finish,
.tckb-center-workspace .tckb-exam-live-result {
  background:
    linear-gradient(145deg, rgba(20, 63, 106, .96), rgba(8, 36, 69, .98));
  border-color: rgba(104, 178, 238, .24);
  box-shadow:
    0 16px 38px rgba(2, 18, 38, .26),
    inset 0 1px 0 rgba(255, 255, 255, .055);
}

.tckb-question-bank__intro {
  margin: -4px 0 16px;
  color: var(--tc-muted);
  line-height: 1.55;
}

.tckb-question-bank__list {
  display: grid;
  gap: 9px;
}

.tckb-question-bank__item {
  overflow: hidden;
  border: 1px solid rgba(115, 189, 233, .18);
  border-radius: 14px;
  background: rgba(6, 31, 59, .56);
}

.tckb-question-bank__item[open] {
  border-color: rgba(79, 202, 246, .38);
  background: rgba(8, 42, 76, .76);
}

.tckb-question-bank__item summary {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 24px;
  gap: 12px;
  align-items: center;
  padding: 13px 15px;
  cursor: pointer;
  list-style: none;
}

.tckb-question-bank__item summary::-webkit-details-marker {
  display: none;
}

.tckb-question-bank__item summary > span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  color: #eaf9ff;
  background: linear-gradient(145deg, #258fda, #1765aa);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
  font-weight: 900;
}

.tckb-question-bank__item summary small,
.tckb-question-bank__item summary strong {
  display: block;
}

.tckb-question-bank__item summary small {
  margin-bottom: 3px;
  color: #6cd8ff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.tckb-question-bank__item summary strong {
  color: #f4f9ff;
  line-height: 1.38;
}

.tckb-question-bank__item summary i {
  color: #93cce7;
  font-size: 22px;
  font-style: normal;
  transition: transform .18s ease;
}

.tckb-question-bank__item[open] summary i {
  transform: rotate(180deg);
}

.tckb-question-bank__answers {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px 64px;
}

.tckb-question-bank__answers > div {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 46px;
  padding: 9px 12px;
  border: 1px solid rgba(124, 184, 220, .16);
  border-radius: 11px;
  color: #d8e9f7;
  background: rgba(10, 49, 83, .64);
}

.tckb-question-bank__answers > div > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  color: #dcefff;
  background: rgba(43, 108, 158, .5);
  font-weight: 900;
}

.tckb-question-bank__answers > div > strong {
  color: #e8f4fd;
  font-weight: 700;
}

.tckb-question-bank__answers > div > em {
  padding: 5px 8px;
  border-radius: 999px;
  color: #d9ffef;
  background: rgba(35, 170, 117, .2);
  border: 1px solid rgba(89, 226, 172, .28);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}

.tckb-question-bank__answers > div.is-correct {
  border-color: rgba(79, 225, 163, .42);
  background: linear-gradient(145deg, rgba(24, 107, 79, .64), rgba(10, 67, 65, .72));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}

.tckb-question-bank__answers > div.is-correct > span {
  color: #ffffff;
  background: rgba(32, 180, 119, .68);
}

.tckb-exam-danger-zone {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-color: rgba(255, 139, 155, .28);
  background: linear-gradient(145deg, rgba(104, 42, 61, .72), rgba(43, 29, 55, .92));
}

.tckb-exam-danger-zone > div > span {
  color: #ffb6c2;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.tckb-exam-danger-zone h2 {
  margin: 5px 0 7px;
  color: #fff3f5;
}

.tckb-exam-danger-zone p {
  margin: 0;
  max-width: 850px;
  color: #e8cbd1;
  line-height: 1.5;
}

.tckb-exam-danger-zone form {
  flex: 0 0 auto;
  margin: 0;
}

.tckb-exam-danger-zone button {
  min-height: 43px;
  padding: 0 15px;
  border: 1px solid rgba(255, 173, 185, .34);
  border-radius: 11px;
  color: #fff;
  background: #a63c54;
  box-shadow: 0 10px 22px rgba(41, 7, 18, .26), inset 0 1px 0 rgba(255,255,255,.12);
  cursor: pointer;
  font-weight: 800;
}

.tckb-exam-danger-zone button:hover {
  background: #bd4660;
}

@media (max-width: 760px) {
  .tckb-center-workspace {
    min-height: calc(100vh - 64px);
  }

  .tckb-question-bank__answers {
    padding-left: 12px;
  }

  .tckb-question-bank__answers > div {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .tckb-question-bank__answers > div > em {
    grid-column: 2;
    justify-self: start;
  }

  .tckb-exam-danger-zone {
    align-items: stretch;
    flex-direction: column;
  }

  .tckb-exam-danger-zone button {
    width: 100%;
  }
}

/* Native Core header, matching the common Tecsa Center module layout. */
.tckb-center-native-hero {
  width: 100%;
  padding: 24px clamp(14px, 2.8vw, 42px) 0;
}

.tckb-center-native-hero:empty {
  display: none;
}

.tckb-center-native-hero .tc-ui-hero {
  margin: 0;
}

.tckb-exam-person-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid var(--tc-border);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(18, 66, 108, .88), rgba(8, 38, 68, .92));
  box-shadow: var(--tc-shadow);
}

.tckb-exam-person-strip .tckb-exam-person {
  min-width: min(320px, 100%);
  padding: 10px 13px;
}

.tckb-exam-person-strip > p {
  max-width: 820px;
  margin: 0;
  color: var(--tc-muted);
  line-height: 1.5;
}

.tckb-exam-admin-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
  padding: 8px;
  border: 1px solid var(--tc-border);
  border-radius: 15px;
  background: rgba(7, 35, 64, .74);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 10px 24px rgba(2,18,38,.16);
}

.tckb-exam-admin-tabs a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  border: 1px solid rgba(116, 213, 248, .18);
  border-radius: 11px;
  color: #dff7ff;
  background: rgba(18, 85, 135, .48);
  text-decoration: none;
  font-weight: 800;
}

.tckb-exam-admin-tabs a.is-active {
  color: #ffffff;
  border-color: rgba(91, 207, 248, .54);
  background: #168ecb;
  box-shadow: 0 8px 18px rgba(3,31,53,.22), inset 0 1px 0 rgba(255,255,255,.14);
}

@media (max-width: 760px) {
  .tckb-center-native-hero {
    padding: 12px 10px 0;
  }

  .tckb-exam-person-strip {
    align-items: stretch;
    flex-direction: column;
  }

  .tckb-exam-person-strip .tckb-exam-person {
    min-width: 0;
  }

  .tckb-exam-admin-tabs a {
    flex: 1 1 0;
  }
}

/* 1.4.1: explicit question selection and full-width UI 2.0 shell fixes. */
.tckb-center-workspace,
.tckb-center-workspace *,
.tc-app-shell .tckb-center-workspace,
.tc-app-shell .tckb-center-workspace * {
  font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.tc-app-shell .tckb-center-workspace,
.tc-app-shell .tckb-center-native-hero,
.tc-app-shell .tckb-center-catalog,
.tc-app-shell .tckb-exam-page,
.tc-app-shell .tckb-exam-admin,
.tc-app-shell .tckb-admin-front,
.tc-app-shell .tckb-settings-front {
  width: 100% !important;
  max-width: none !important;
}

.tckb-question-selector {
  margin-top: 20px;
  background:
    radial-gradient(circle at 92% 0%, rgba(59, 167, 255, .13), transparent 28%),
    linear-gradient(145deg, rgba(16, 59, 100, .96), rgba(7, 34, 65, .98));
}

.tckb-question-selector__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: -2px 0 16px;
}

.tckb-question-selector__toolbar .tckb-question-bank__intro {
  flex: 1 1 auto;
  margin: 0;
}

.tckb-question-selector__toolbar > div {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.tckb-question-selector__toolbar button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 13px;
  border: 1px solid rgba(119, 209, 244, .24);
  border-radius: 10px;
  color: #eef9ff;
  background: rgba(25, 98, 151, .62);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(2,20,40,.16);
  cursor: pointer;
  font-weight: 750;
}

.tckb-question-selector__toolbar button:hover {
  background: rgba(31, 124, 185, .78);
  border-color: rgba(102, 216, 250, .42);
}

.tckb-question-select-item {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(115, 189, 233, .16);
  border-radius: 15px;
  background: rgba(5, 28, 55, .44);
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.tckb-question-select-item.is-selected {
  border-color: rgba(72, 201, 244, .42);
  background: rgba(11, 57, 94, .62);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 10px 24px rgba(1,16,34,.15);
}

.tckb-question-select-toggle {
  display: grid;
  place-items: center;
  min-height: 70px;
  margin: 0;
  border-right: 1px solid rgba(119, 190, 230, .15);
  background: rgba(8, 38, 70, .7);
  cursor: pointer;
}

.tckb-question-select-toggle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.tckb-question-select-toggle span {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  border: 2px solid #75abc9;
  border-radius: 7px;
  background: rgba(255,255,255,.03);
  box-shadow: inset 0 0 0 3px rgba(4, 25, 47, .54);
}

.tckb-question-select-toggle input:checked + span {
  border-color: #6ce0ff;
  background: linear-gradient(145deg, #2fc8ef, #1688c8);
  box-shadow: 0 7px 16px rgba(4,58,93,.28), inset 0 1px 0 rgba(255,255,255,.22);
}

.tckb-question-select-toggle input:checked + span::after {
  content: "";
  position: absolute;
  left: 7px;
  top: 3px;
  width: 6px;
  height: 11px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.tckb-question-select-item .tckb-question-bank__item {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.tckb-question-select-item .tckb-question-bank__item[open] {
  background: rgba(4, 29, 56, .34);
}

.tckb-question-select-item:not(.is-selected) {
  opacity: .68;
}

.tckb-question-select-item:not(.is-selected) .tckb-question-bank__item summary strong {
  color: #aac0d3;
}

@media (max-width: 760px) {
  .tckb-question-selector__toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .tckb-question-selector__toolbar > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .tckb-question-select-item {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .tckb-question-select-toggle {
    min-height: 64px;
  }
}

/* 1.5.0 — deep navy embossed UI, consistent controls and resumable exam */
.tckb-center-module-body,
.tckb-center-module-body * {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

.tckb-center-module-body a,
.tckb-center-module-body button {
  text-decoration: none !important;
}

.tckb-center-module-body .tckb-exam-admin,
.tckb-center-module-body .tckb-exam-page {
  --tckb-deep-1: #05172a;
  --tckb-deep-2: #08213b;
  --tckb-deep-3: #0a2a49;
  --tckb-edge: rgba(116, 190, 235, .24);
  --tckb-inner: inset 0 1px 0 rgba(255,255,255,.055), inset 0 -18px 34px rgba(1,10,22,.22);
  --tckb-raised: 0 18px 38px rgba(1, 12, 27, .32), inset 0 1px 0 rgba(255,255,255,.07), inset 0 -1px 0 rgba(0,0,0,.34);
}

.tckb-center-module-body .tckb-exam-admin-tabs,
.tckb-center-module-body .tckb-exam-admin-card,
.tckb-center-module-body .tckb-exam-results-group,
.tckb-center-module-body .tckb-exam-person-strip,
.tckb-center-module-body .tckb-exam-state,
.tckb-center-module-body .tckb-exam-intro,
.tckb-center-module-body .tckb-exam-work,
.tckb-center-module-body .tckb-exam-finish,
.tckb-center-module-body .tckb-exam-live-result {
  border: 1px solid var(--tckb-edge) !important;
  background:
    radial-gradient(circle at 88% -20%, rgba(43,151,218,.15), transparent 34%),
    linear-gradient(145deg, var(--tckb-deep-3) 0%, var(--tckb-deep-2) 48%, var(--tckb-deep-1) 100%) !important;
  box-shadow: var(--tckb-raised) !important;
}

.tckb-center-module-body .tckb-exam-admin-card,
.tckb-center-module-body .tckb-exam-results-group,
.tckb-center-module-body .tckb-exam-person-strip,
.tckb-center-module-body .tckb-exam-state,
.tckb-center-module-body .tckb-exam-intro,
.tckb-center-module-body .tckb-exam-work,
.tckb-center-module-body .tckb-exam-finish,
.tckb-center-module-body .tckb-exam-live-result {
  border-radius: 22px !important;
}

.tckb-center-module-body .tckb-exam-admin-card__title,
.tckb-center-module-body .tckb-user-picker,
.tckb-center-module-body .tckb-question-bank,
.tckb-center-module-body .tckb-add-users-panel,
.tckb-center-module-body .tckb-result-body,
.tckb-center-module-body .tckb-exam-current__stats > div,
.tckb-center-module-body .tckb-exam-summary-grid article,
.tckb-center-module-body .tckb-exam-question {
  background: linear-gradient(145deg, rgba(4,22,40,.86), rgba(8,34,59,.92)) !important;
  border: 1px solid rgba(112,188,232,.18) !important;
  box-shadow: inset 0 2px 8px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.035), 0 10px 24px rgba(1,12,27,.18) !important;
}

.tckb-center-module-body .tckb-exam-admin-card__title {
  margin: -2px -2px 20px;
  padding: 18px 20px;
  border-radius: 17px;
}

.tckb-center-module-body .tckb-exam-form-grid {
  gap: 16px !important;
}

.tckb-center-module-body .tckb-exam-form-grid label,
.tckb-center-module-body .tckb-user-picker header,
.tckb-center-module-body .tckb-user-picker footer,
.tckb-center-module-body .tckb-question-selector__toolbar {
  padding: 14px !important;
  border-radius: 15px !important;
  background: linear-gradient(145deg, rgba(3,18,34,.78), rgba(7,31,55,.84)) !important;
  border: 1px solid rgba(112,188,232,.15) !important;
  box-shadow: inset 0 2px 9px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.tckb-center-module-body .tckb-exam-form-grid input,
.tckb-center-module-body .tckb-exam-form-grid textarea,
.tckb-center-module-body .tckb-exam-form-grid select,
.tckb-center-module-body .tckb-user-picker input[type="search"] {
  color: #eaf7ff !important;
  background: linear-gradient(180deg, #071a2d, #09233d) !important;
  border: 1px solid rgba(115,194,238,.25) !important;
  border-radius: 12px !important;
  box-shadow: inset 0 3px 9px rgba(0,0,0,.34), 0 1px 0 rgba(255,255,255,.035) !important;
}

.tckb-center-module-body .tckb-exam-form-grid input:focus,
.tckb-center-module-body .tckb-exam-form-grid textarea:focus,
.tckb-center-module-body .tckb-user-picker input[type="search"]:focus {
  outline: none !important;
  border-color: rgba(75,205,250,.68) !important;
  box-shadow: inset 0 3px 9px rgba(0,0,0,.34), 0 0 0 3px rgba(42,173,228,.14) !important;
}

.tckb-center-module-body .tckb-exam-form-grid input::placeholder,
.tckb-center-module-body .tckb-exam-form-grid textarea::placeholder,
.tckb-center-module-body .tckb-user-picker input::placeholder {
  color: #7898b2 !important;
}

.tckb-center-module-body .tckb-ui-button,
.tckb-center-module-body .tckb-exam-primary,
.tckb-center-module-body .tckb-exam-admin-tabs a,
.tckb-center-module-body .tckb-question-selector__toolbar button,
.tckb-center-module-body .tckb-user-picker button,
.tckb-center-module-body .tckb-exam-current__actions a,
.tckb-center-module-body .tckb-exam-current__actions button,
.tckb-center-module-body .tckb-result-actions button,
.tckb-center-module-body .tckb-results-header-actions button,
.tckb-center-module-body .tckb-exam-danger-zone button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 17px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(119,217,253,.36) !important;
  color: #fff !important;
  background: linear-gradient(180deg, #2baeea 0%, #1687cb 54%, #0c6cac 100%) !important;
  box-shadow: 0 9px 20px rgba(0,19,40,.32), inset 0 1px 0 rgba(255,255,255,.25), inset 0 -2px 4px rgba(0,52,92,.34) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  cursor: pointer !important;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease !important;
}

.tckb-center-module-body .tckb-ui-button:hover,
.tckb-center-module-body .tckb-exam-primary:hover,
.tckb-center-module-body .tckb-exam-admin-tabs a:hover,
.tckb-center-module-body .tckb-question-selector__toolbar button:hover,
.tckb-center-module-body .tckb-user-picker button:hover,
.tckb-center-module-body .tckb-exam-current__actions a:hover,
.tckb-center-module-body .tckb-exam-current__actions button:hover,
.tckb-center-module-body .tckb-result-actions button:hover,
.tckb-center-module-body .tckb-results-header-actions button:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.1) !important;
  box-shadow: 0 13px 26px rgba(0,19,40,.38), inset 0 1px 0 rgba(255,255,255,.3), inset 0 -2px 4px rgba(0,52,92,.3) !important;
}

.tckb-center-module-body .tckb-ui-button--ghost,
.tckb-center-module-body .tckb-exam-admin-tabs a:not(.is-active),
.tckb-center-module-body .tckb-user-picker button[type="button"] {
  color: #d9f2ff !important;
  background: linear-gradient(180deg, #123b60, #0b2b49) !important;
  border-color: rgba(112,194,237,.22) !important;
}

.tckb-center-module-body .tckb-ui-button--danger,
.tckb-center-module-body .tckb-exam-danger-zone button {
  background: linear-gradient(180deg, #b84a5d, #873043) !important;
  border-color: rgba(255,168,183,.34) !important;
}

.tckb-center-module-body .tckb-exam-admin-tabs {
  padding: 9px !important;
  border-radius: 17px !important;
}

.tckb-center-module-body .tckb-exam-admin-tabs a {
  margin: 0 4px !important;
}

.tckb-center-module-body .tckb-user-option,
.tckb-center-module-body .tckb-question-select-item,
.tckb-center-module-body .tckb-exam-option,
.tckb-center-module-body .tckb-exam-result-person {
  background: linear-gradient(145deg, rgba(7,31,55,.92), rgba(4,21,39,.96)) !important;
  border: 1px solid rgba(105,183,228,.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 8px 18px rgba(0,12,28,.2) !important;
}

.tckb-center-module-body .tckb-user-option.is-selected,
.tckb-center-module-body .tckb-question-select-item.is-selected,
.tckb-center-module-body .tckb-exam-option.is-selected {
  background: linear-gradient(145deg, rgba(12,63,102,.96), rgba(6,37,66,.98)) !important;
  border-color: rgba(71,205,250,.52) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), inset 0 -10px 24px rgba(0,23,45,.2), 0 10px 22px rgba(0,17,36,.26) !important;
}

.tckb-center-module-body .tckb-add-users-panel {
  margin-top: 18px;
  overflow: hidden;
  border-radius: 17px !important;
}

.tckb-center-module-body .tckb-add-users-panel > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 56px;
  padding: 0 18px;
  color: #eff9ff;
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}

.tckb-center-module-body .tckb-add-users-panel > summary::-webkit-details-marker { display: none; }
.tckb-center-module-body .tckb-add-users-panel > div { padding: 0 16px 16px; }
.tckb-center-module-body .tckb-add-users-panel[open] > summary i { transform: rotate(180deg); }

.tckb-center-module-body .tckb-exam-page-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
  padding: 11px 13px;
  border: 1px solid rgba(112,188,232,.17);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(5,24,43,.9), rgba(8,37,64,.88));
  box-shadow: inset 0 2px 8px rgba(0,0,0,.28), 0 8px 18px rgba(0,12,28,.18);
}

.tckb-center-module-body .tckb-exam-page-nav span {
  color: #9fc6df;
  font-size: 13px;
  font-weight: 650;
}

.tckb-center-module-body .tckb-exam-current__actions,
.tckb-center-module-body .tckb-result-actions,
.tckb-center-module-body .tckb-results-header-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.tckb-center-module-body .tckb-results-header-actions > div {
  min-width: 105px;
  text-align: right;
}

.tckb-center-module-body .tckb-user-picker--compact {
  margin-top: 0 !important;
}

.tckb-center-module-body .tckb-user-picker--compact footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

@media (max-width: 760px) {
  .tckb-center-module-body .tckb-exam-page-nav,
  .tckb-center-module-body .tckb-user-picker--compact footer {
    align-items: stretch;
    flex-direction: column;
  }
  .tckb-center-module-body .tckb-ui-button,
  .tckb-center-module-body .tckb-exam-primary,
  .tckb-center-module-body .tckb-exam-current__actions a,
  .tckb-center-module-body .tckb-exam-current__actions button,
  .tckb-center-module-body .tckb-result-actions button {
    width: 100% !important;
  }
}
.tckb-center-module-body .tckb-result-meta { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1100px) { .tckb-center-module-body .tckb-result-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 680px) { .tckb-center-module-body .tckb-result-meta { grid-template-columns: 1fr; } }

/* ================================================================
 * Tecsa Education hub — final UI 2.0 overrides.
 * These selectors intentionally come last to neutralise legacy card rules.
 * ================================================================ */
.tckb-center-workspace .tckb-learning-hub,
.tckb-center-module-body .tckb-learning-hub {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 24px clamp(18px, 2.6vw, 42px) 52px;
}

.tckb-learning-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}

.tckb-learning-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 330px;
  padding: 24px;
  overflow: hidden;
  border: 1px solid rgba(121, 190, 238, .24) !important;
  border-radius: 22px !important;
  color: #f6fbff !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(40, 154, 224, .17), transparent 34%),
    linear-gradient(145deg, #123f6a 0%, #0a2e50 52%, #071f39 100%) !important;
  box-shadow:
    0 22px 48px rgba(1, 13, 29, .30),
    inset 0 1px 0 rgba(255, 255, 255, .075),
    inset 0 -1px 0 rgba(0, 0, 0, .24) !important;
}

.tckb-learning-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(118deg, rgba(255,255,255,.045), transparent 35%, transparent 70%, rgba(36,155,222,.055));
}

.tckb-learning-card__header {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 18px;
}

.tckb-learning-card__icon {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(179, 229, 255, .23);
  border-radius: 18px;
  color: #fff;
  background: linear-gradient(145deg, #35bdf0, #2d69e8);
  box-shadow:
    0 14px 28px rgba(3, 26, 57, .34),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -2px 4px rgba(2,25,62,.23);
}

.tckb-learning-card__svg {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tckb-learning-card__eyebrow,
.tckb-learning-card > span,
.tckb-learning-card__header span {
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #65d9ff !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}

.tckb-learning-card h2,
.tckb-learning-card__header h2 {
  margin: 0 !important;
  color: #f8fcff !important;
  font-size: clamp(23px, 2vw, 29px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em;
}

.tckb-learning-card__description {
  position: relative;
  z-index: 1;
  margin: 0 !important;
  color: #bad2e6 !important;
  font-size: 15px;
  line-height: 1.62 !important;
}

.tckb-learning-card__features {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 0;
}

.tckb-learning-card__features span {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  min-height: 30px;
  margin: 0 !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(117, 203, 247, .17) !important;
  border-radius: 999px;
  color: #cdeeff !important;
  background: rgba(10, 39, 70, .54) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.tckb-learning-card .tckb-exam-card-status {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 18px 0 0;
  min-height: 38px;
  justify-content: flex-start;
  padding: 8px 12px;
  border-radius: 12px;
  color: #d8ecfb;
  background: rgba(4, 26, 50, .42);
  border: 1px solid rgba(121, 190, 238, .18);
  box-shadow: inset 0 2px 8px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.025);
}

.tckb-learning-card__actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: auto;
  padding-top: 22px;
}

.tckb-learning-button,
.tckb-center-module-body .tckb-learning-button,
.tckb-center-workspace .tckb-learning-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 16px !important;
  border: 1px solid rgba(151, 224, 255, .23) !important;
  border-radius: 13px !important;
  color: #fff !important;
  text-decoration: none !important;
  background: linear-gradient(180deg, #29afe8 0%, #147fc3 100%) !important;
  box-shadow:
    0 10px 21px rgba(2, 25, 51, .30),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -2px 3px rgba(0, 42, 83, .22) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  white-space: nowrap;
  cursor: pointer;
  transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
}

.tckb-learning-button:hover {
  transform: translateY(-1px);
  filter: brightness(1.07);
  box-shadow: 0 14px 26px rgba(2, 25, 51, .36), inset 0 1px 0 rgba(255,255,255,.3) !important;
}

.tckb-learning-button.is-secondary {
  color: #e9f8ff !important;
  background: linear-gradient(180deg, rgba(35, 97, 148, .94), rgba(18, 64, 105, .96)) !important;
  border-color: rgba(125, 202, 241, .22) !important;
}

.tckb-learning-button.is-ghost {
  color: #cfefff !important;
  background: rgba(5, 32, 59, .66) !important;
  border-color: rgba(120, 196, 235, .20) !important;
  box-shadow: inset 0 2px 7px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.035) !important;
}

.tckb-learning-admin-strip {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin-top: 20px;
  padding: 18px 20px;
  border: 1px solid rgba(119, 189, 236, .21);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(17, 57, 94, .96), rgba(6, 31, 57, .98));
  box-shadow: 0 18px 40px rgba(1, 14, 31, .25), inset 0 1px 0 rgba(255,255,255,.055);
}

.tckb-learning-admin-strip__icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #eafbff;
  background: linear-gradient(145deg, #237fc0, #174c82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 10px 22px rgba(2,25,48,.26);
  font-size: 24px;
}

.tckb-learning-admin-strip span {
  color: #5ed8ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.tckb-learning-admin-strip h2 { margin: 3px 0 3px; color: #f5fbff; font-size: 21px; }
.tckb-learning-admin-strip p { margin: 0; color: #abc8dd; }

/* Always-visible navigation and export controls on exam administration pages. */
.tckb-exam-admin-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
  padding: 10px;
  border: 1px solid rgba(112, 185, 232, .20);
  border-radius: 17px;
  background: linear-gradient(145deg, rgba(14, 54, 91, .88), rgba(6, 31, 57, .92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 28px rgba(1,15,31,.18);
}
.tckb-exam-admin-topbar .tckb-exam-admin-tabs { margin: 0; border: 0; background: transparent; }

.tckb-results-export-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 14px;
  padding: 18px 20px;
  border: 1px solid rgba(104, 190, 239, .22);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(45,177,230,.13), transparent 34%),
    linear-gradient(145deg, rgba(18, 66, 106, .96), rgba(7, 35, 65, .98));
  box-shadow: 0 16px 34px rgba(1,14,31,.22), inset 0 1px 0 rgba(255,255,255,.06);
}
.tckb-results-export-toolbar span { color: #5ed8ff; font-size: 11px; font-weight: 900; letter-spacing: .075em; text-transform: uppercase; }
.tckb-results-export-toolbar h2 { margin: 4px 0; color: #f4fbff; font-size: 21px; }
.tckb-results-export-toolbar p { margin: 0; color: #abc8dd; }
.tckb-results-export-toolbar form { margin: 0; flex: 0 0 auto; }

.tckb-results-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.tckb-results-header-actions form { margin: 0; }

/* Buttons in exam UI must look and behave like controls, never bare links. */
.tckb-exam-admin a.tckb-ui-button,
.tckb-exam-page a.tckb-ui-button,
.tckb-exam-admin button.tckb-ui-button,
.tckb-exam-page button.tckb-ui-button,
.tckb-exam-admin .tckb-exam-admin-tabs a,
.tckb-exam-page-nav a {
  text-decoration: none !important;
}

.tckb-exam-admin .tckb-ui-button,
.tckb-exam-page .tckb-ui-button,
.tckb-exam-admin .tckb-exam-admin-tabs a,
.tckb-exam-page-nav a,
.tckb-exam-admin button,
.tckb-exam-page button {
  border-radius: 12px;
}

@media (max-width: 900px) {
  .tckb-learning-grid { grid-template-columns: 1fr; }
  .tckb-learning-admin-strip { grid-template-columns: 48px minmax(0,1fr); }
  .tckb-learning-admin-strip > .tckb-learning-button { grid-column: 1 / -1; width: 100%; }
  .tckb-exam-admin-topbar,
  .tckb-results-export-toolbar { align-items: stretch; flex-direction: column; }
  .tckb-exam-admin-topbar .tckb-ui-button,
  .tckb-results-export-toolbar .tckb-ui-button { width: 100%; }
  .tckb-results-header-actions { align-items: flex-end; flex-direction: column; }
}

@media (max-width: 620px) {
  .tckb-center-workspace .tckb-learning-hub,
  .tckb-center-module-body .tckb-learning-hub { padding: 14px 11px 34px; }
  .tckb-learning-card { min-height: 0; padding: 18px; border-radius: 18px !important; }
  .tckb-learning-card__header { align-items: flex-start; }
  .tckb-learning-card__actions { display: grid; grid-template-columns: 1fr; }
  .tckb-learning-button { width: 100%; }
  .tckb-learning-admin-strip { padding: 16px; }
}

.tckb-exam-intro__actions,
.tckb-exam-submit-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
@media (max-width: 680px) {
  .tckb-exam-intro__actions,
  .tckb-exam-submit-actions { align-items: stretch; flex-direction: column; width: 100%; }
  .tckb-exam-intro__actions > *,
  .tckb-exam-submit-actions > * { width: 100% !important; }
}

/* 1.7.0 — пересдачи, история попыток и безопасное обнуление. */
.tckb-exam-page-nav--status-only {
  justify-content: flex-end;
}

.tckb-result-name strong em {
  display: inline-flex;
  margin-left: 6px;
  color: #71dcff;
  font-size: .86em;
  font-style: normal;
  font-weight: 850;
}

.tckb-exam-result-person.is-retake {
  border-color: rgba(77, 198, 243, .34);
  box-shadow: 0 15px 30px rgba(1, 16, 34, .24), inset 0 1px 0 rgba(255,255,255,.055);
}

.tckb-retake-form {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  padding: 12px;
  border: 1px solid rgba(94, 202, 246, .19);
  border-radius: 15px;
  background: rgba(4, 27, 51, .62);
  box-shadow: inset 0 2px 9px rgba(0, 0, 0, .20), inset 0 1px 0 rgba(255,255,255,.03);
}

.tckb-retake-form label {
  display: grid;
  gap: 6px;
  min-width: 255px;
  color: #9fd9f6;
  font-size: 12px;
  font-weight: 800;
}

.tckb-retake-form input[type="datetime-local"] {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid rgba(111, 201, 243, .25);
  border-radius: 12px;
  color: #f5fbff;
  background: #061f39;
  box-shadow: inset 0 3px 9px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
  font: inherit;
}

.tckb-previous-attempt {
  margin-top: 14px;
  border: 0;
}

.tckb-previous-attempt > summary {
  width: fit-content;
  list-style: none;
  cursor: pointer;
}
.tckb-previous-attempt > summary::-webkit-details-marker { display: none; }

.tckb-previous-attempt__body {
  margin-top: 12px;
  padding: 16px;
  border: 1px solid rgba(120, 183, 224, .18);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(7, 36, 65, .94), rgba(3, 23, 44, .98));
  box-shadow: inset 0 3px 12px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.025);
}

.tckb-previous-attempt__body > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.tckb-previous-attempt__body > header small {
  color: #77cfee;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .045em;
}

.tckb-previous-attempt__body > header h3 {
  margin: 3px 0 0;
  color: #f4fbff;
}

.tckb-previous-attempt__body > header > strong {
  min-width: 70px;
  padding: 9px 12px;
  border-radius: 12px;
  color: #ffe7eb;
  background: rgba(139, 49, 67, .50);
  text-align: center;
}

.tckb-delete-confirm {
  display: grid;
  gap: 6px;
  min-width: 230px;
  color: #ffd4da;
  font-size: 12px;
  font-weight: 750;
}

.tckb-delete-confirm input {
  min-height: 43px;
  padding: 0 12px;
  border: 1px solid rgba(255, 135, 153, .32);
  border-radius: 12px;
  color: #fff;
  background: rgba(38, 11, 20, .64);
  box-shadow: inset 0 3px 9px rgba(0,0,0,.26);
  font: inherit;
}

.tckb-exam-danger-zone form {
  align-items: flex-end;
  flex-wrap: wrap;
}

@media (max-width: 700px) {
  .tckb-retake-form,
  .tckb-exam-danger-zone form {
    align-items: stretch;
    flex-direction: column;
  }
  .tckb-retake-form label,
  .tckb-retake-form button,
  .tckb-delete-confirm,
  .tckb-exam-danger-zone form button {
    width: 100%;
    min-width: 0;
  }
  .tckb-previous-attempt__body > header {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* 1.8.0 — multiple exams, draft/start workflow and compact status pages. */
.tc-app-shell .tckb-center-workspace,
.tc-app-shell .tckb-center-native-hero,
.tc-app-shell .tckb-center-catalog,
.tc-app-shell .tckb-exam-page,
.tc-app-shell .tckb-exam-admin {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.tckb-exam-status-page {
  padding-top: 18px;
}

.tckb-exam-status-hero,
.tckb-exam-results-index {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 18px;
  padding: 22px 24px;
  border: 1px solid rgba(127, 198, 239, .2);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(56, 200, 244, .13), transparent 31%),
    linear-gradient(145deg, rgba(16, 61, 103, .97), rgba(7, 34, 64, .98));
  box-shadow: 0 18px 38px rgba(1, 18, 37, .24), inset 0 1px 0 rgba(255,255,255,.07);
}

.tckb-exam-status-hero span,
.tckb-exam-results-index span {
  color: #66d9fa;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tckb-exam-status-hero h1,
.tckb-exam-results-index h2 {
  margin: 5px 0 6px;
  color: #f7fbff;
}

.tckb-exam-status-hero p,
.tckb-exam-results-index p,
.tckb-exam-current__description {
  margin: 0;
  color: #b9d1e5;
}

.tckb-exam-status-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tckb-exam-status-list,
.tckb-employee-exam-list,
.tckb-exam-results-accordion {
  display: grid;
  gap: 16px;
}

.tckb-exam-current.is-draft {
  border-color: rgba(238, 194, 89, .25);
  background:
    radial-gradient(circle at 92% 0%, rgba(238, 194, 89, .08), transparent 30%),
    linear-gradient(145deg, rgba(18, 62, 100, .97), rgba(7, 34, 64, .98));
}

.tckb-exam-current__description {
  margin: -4px 0 14px;
  line-height: 1.5;
}

.tckb-exam-current__stats {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.tckb-employee-exam-card {
  padding: 22px;
  border: 1px solid rgba(123, 196, 236, .2);
  border-radius: 20px;
  background:
    radial-gradient(circle at 96% 0%, rgba(55, 198, 243, .11), transparent 28%),
    linear-gradient(145deg, rgba(16, 61, 102, .96), rgba(7, 33, 63, .98));
  box-shadow: 0 16px 34px rgba(2, 18, 37, .22), inset 0 1px 0 rgba(255,255,255,.06);
}

.tckb-employee-exam-card > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.tckb-employee-exam-card > header span {
  color: #67d9fa;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.tckb-employee-exam-card h2 {
  margin: 5px 0 0;
  color: #f8fcff;
}

.tckb-employee-exam-card > header > strong {
  padding: 7px 10px;
  border-radius: 999px;
  color: #eaf8ff;
  background: rgba(40, 146, 200, .22);
  border: 1px solid rgba(86, 205, 245, .24);
  white-space: nowrap;
}

.tckb-employee-exam-card > p {
  color: #b9d1e5;
  line-height: 1.5;
}

.tckb-employee-exam-card__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
  margin: 16px 0;
}

.tckb-employee-exam-card__stats span {
  display: block;
  padding: 12px;
  border-radius: 13px;
  background: rgba(4, 27, 53, .48);
  border: 1px solid rgba(121, 190, 228, .13);
  box-shadow: inset 0 2px 8px rgba(0, 13, 30, .2);
}

.tckb-employee-exam-card__stats small {
  display: block;
  margin-bottom: 4px;
  color: #91b9d3;
}

.tckb-employee-exam-card__stats b {
  color: #f4faff;
}

.tckb-exam-results-group {
  overflow: hidden;
  border: 1px solid rgba(122, 194, 235, .2);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(14, 55, 94, .96), rgba(6, 31, 59, .98));
  box-shadow: 0 16px 35px rgba(1, 17, 35, .22), inset 0 1px 0 rgba(255,255,255,.06);
}

.tckb-exam-results-group__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 19px 22px;
  cursor: pointer;
  list-style: none;
}

.tckb-exam-results-group__summary::-webkit-details-marker { display: none; }
.tckb-exam-results-group__summary > div:last-child { display: flex; align-items: center; gap: 9px; }
.tckb-exam-results-group__summary span { color: #66d7f7; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.tckb-exam-results-group__summary h2 { margin: 4px 0; color: #f6fbff; font-size: 20px; }
.tckb-exam-results-group__summary p,
.tckb-exam-results-group__summary small { margin: 0; color: #a9c4d9; }
.tckb-exam-results-group__summary strong { color: #f5fbff; font-size: 19px; }
.tckb-exam-results-group__summary i { color: #7adcf7; font-style: normal; transition: transform .2s ease; }
.tckb-exam-results-group[open] .tckb-exam-results-group__summary i { transform: rotate(180deg); }
.tckb-exam-results-group__body { padding: 0 18px 18px; border-top: 1px solid rgba(121, 193, 232, .14); }
.tckb-exam-results-group__body > .tckb-results-header-actions { justify-content: flex-end; padding: 14px 0 4px; }

.tckb-exam-timer--floating {
  position: fixed;
  top: 76px;
  right: 24px;
  z-index: 2147479000;
  min-width: 142px;
  padding: 8px 12px;
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(19, 88, 139, .97), rgba(7, 44, 81, .98));
  border: 1px solid rgba(99, 211, 246, .32);
  box-shadow: 0 14px 30px rgba(0, 13, 30, .34), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
}

.tckb-exam-timer--floating small { color: #9bdcf1; }
.tckb-exam-timer--floating strong { font-size: 18px; }

@media (max-width: 1180px) {
  .tckb-exam-current__stats { grid-template-columns: repeat(3, minmax(120px, 1fr)); }
}

@media (max-width: 760px) {
  .tckb-exam-status-hero,
  .tckb-exam-results-index,
  .tckb-exam-results-group__summary { align-items: stretch; flex-direction: column; }
  .tckb-exam-status-hero__actions { width: 100%; }
  .tckb-exam-status-hero__actions .tckb-ui-button { flex: 1 1 auto; }
  .tckb-exam-current__stats,
  .tckb-employee-exam-card__stats { grid-template-columns: 1fr 1fr; }
  .tckb-employee-exam-card > header { flex-direction: column; }
  .tckb-exam-results-group__summary > div:last-child { justify-content: space-between; }
  .tckb-exam-timer--floating { top: 76px; right: 10px; min-width: 126px; }
}


/* 1.8.2 — checkbox and result-card stability in the fixed Bitrix24 app iframe. */
.tckb-center-module-body [data-tckb-question-picker],
.tckb-center-module-body [data-tckb-question-picker] .tckb-question-bank__list,
.tckb-center-module-body [data-tckb-question-picker] .tckb-question-select-item {
  overflow-anchor: none !important;
}

.tckb-center-module-body .tckb-question-select-toggle {
  position: relative !important;
  display: grid !important;
  grid-template: 1fr / 1fr !important;
  place-items: center !important;
  isolation: isolate;
  overflow: hidden;
}

/* The real checkbox now occupies its actual 24x24 location. It is no longer
 * an invisible absolute layer covering the full row, so Chromium has no
 * distant focus rectangle to scroll to inside the Bitrix24 nested scroller. */
.tckb-center-module-body .tckb-question-select-toggle input[type="checkbox"] {
  position: relative !important;
  inset: auto !important;
  grid-area: 1 / 1 !important;
  z-index: 2 !important;
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: .001 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

.tckb-center-module-body .tckb-question-select-toggle > span {
  position: relative !important;
  grid-area: 1 / 1 !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.tckb-center-module-body .tckb-question-select-toggle input[type="checkbox"]:focus-visible + span {
  outline: 3px solid rgba(91, 215, 255, .42);
  outline-offset: 3px;
}

/* Multi-exam results: the 1.8.0 markup uses .tckb-exam-result. Give it its
 * own grid instead of inheriting the obsolete single-exam card selectors. */
.tckb-center-module-body .tckb-exam-results-group__body .tckb-exam-result {
  display: block;
  margin-top: 10px;
  overflow: hidden;
  border: 1px solid rgba(104, 187, 232, .18);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(7, 34, 60, .94), rgba(4, 23, 43, .98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 10px 22px rgba(0, 13, 30, .18);
}

.tckb-center-module-body .tckb-exam-results-group__body .tckb-exam-result[open] {
  border-color: rgba(78, 202, 244, .34);
  background: linear-gradient(145deg, rgba(9, 47, 79, .96), rgba(5, 28, 50, .99));
}

.tckb-center-module-body .tckb-exam-results-group__body .tckb-exam-result > summary {
  display: grid !important;
  grid-template-columns: 42px minmax(220px, 1fr) auto auto 22px !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
  padding: 13px 15px !important;
  cursor: pointer;
  list-style: none;
}

.tckb-center-module-body .tckb-exam-results-group__body .tckb-exam-result > summary::-webkit-details-marker {
  display: none;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-person {
  display: block !important;
  min-width: 0 !important;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-person strong,
.tckb-center-module-body .tckb-exam-result .tckb-result-person small {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-person strong {
  color: #f4fbff !important;
  font-size: 15px;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-person small {
  margin-top: 3px;
  color: #99bfd8 !important;
  font-size: 12px;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-status,
.tckb-center-module-body .tckb-exam-result .tckb-result-score {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 6px 10px !important;
  border-radius: 10px !important;
  white-space: nowrap !important;
  font-weight: 850 !important;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-status {
  color: #dbefff !important;
  background: rgba(31, 102, 150, .25) !important;
  border: 1px solid rgba(99, 190, 235, .18) !important;
}

.tckb-center-module-body .tckb-exam-result.is-passed .tckb-result-status,
.tckb-center-module-body .tckb-exam-result.is-passed .tckb-result-score {
  color: #d9ffef !important;
  background: rgba(31, 154, 107, .22) !important;
  border-color: rgba(76, 218, 160, .24) !important;
}

.tckb-center-module-body .tckb-exam-result.is-failed .tckb-result-status,
.tckb-center-module-body .tckb-exam-result.is-failed .tckb-result-score,
.tckb-center-module-body .tckb-exam-result.is-pending .tckb-result-status {
  color: #ffe1e6 !important;
  background: rgba(167, 62, 82, .22) !important;
  border-color: rgba(246, 123, 145, .22) !important;
}

.tckb-center-module-body .tckb-exam-result .tckb-result-score {
  min-width: 54px !important;
  color: #eef8ff;
  background: rgba(74, 111, 139, .2);
  border: 1px solid rgba(132, 185, 218, .15);
}

.tckb-center-module-body .tckb-exam-result > summary > i {
  color: #82dff7 !important;
  font-size: 20px !important;
  font-style: normal !important;
  transition: transform .18s ease;
}

.tckb-center-module-body .tckb-exam-result[open] > summary > i {
  transform: rotate(180deg);
}

.tckb-center-module-body .tckb-exam-result > .tckb-result-body {
  padding: 14px 15px 16px !important;
  border-top: 1px solid rgba(111, 189, 232, .14) !important;
}

@media (max-width: 900px) {
  .tckb-center-module-body .tckb-exam-results-group__body .tckb-exam-result > summary {
    grid-template-columns: 40px minmax(0, 1fr) auto !important;
  }
  .tckb-center-module-body .tckb-exam-result .tckb-result-status {
    grid-column: 2;
    justify-self: start;
  }
  .tckb-center-module-body .tckb-exam-result .tckb-result-score {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
  .tckb-center-module-body .tckb-exam-result > summary > i {
    display: none;
  }
}

/* Vacation-aware exam scheduling. */
.tckb-center-module-body .tckb-user-option.is-on-vacation,
.tckb-user-option.is-on-vacation {
  border-color: rgba(255, 208, 91, .48) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(255, 211, 92, .16), transparent 34%),
    linear-gradient(145deg, rgba(37, 64, 83, .96), rgba(17, 42, 65, .98)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 10px 24px rgba(0, 14, 31, .18) !important;
}

.tckb-user-vacation,
.tckb-user-absence {
  display: block;
  margin-top: 6px;
  color: #ffd66b !important;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.35;
}

.tckb-vacation-notice,
.tckb-absence-notice {
  margin: 10px 0 14px;
  padding: 11px 13px;
  border: 1px solid rgba(255, 207, 82, .35);
  border-radius: 12px;
  color: #ffe292 !important;
  background: linear-gradient(145deg, rgba(112, 79, 15, .30), rgba(57, 48, 20, .28));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), inset 0 -8px 18px rgba(42, 28, 2, .12);
  font-weight: 750;
}

.tckb-exam-current__stats > div.is-vacation {
  border-color: rgba(255, 207, 82, .26) !important;
  background: rgba(104, 77, 18, .28) !important;
}
.tckb-exam-current__stats > div.is-vacation small,
.tckb-exam-current__stats > div.is-vacation strong {
  color: #ffe18a !important;
}

.tckb-employee-exam-card.is-vacation {
  border-color: rgba(255, 207, 82, .34);
  background:
    radial-gradient(circle at 96% 0%, rgba(255, 206, 76, .12), transparent 30%),
    linear-gradient(145deg, rgba(28, 63, 91, .97), rgba(13, 38, 62, .99));
}
.tckb-employee-exam-card.is-vacation > header > strong {
  color: #ffe18a;
  border-color: rgba(255, 207, 82, .34);
  background: rgba(115, 82, 15, .32);
}

.tckb-center-module-body .tckb-exam-result.is-vacation {
  border-color: rgba(255, 207, 82, .35) !important;
  background:
    radial-gradient(circle at 96% 0%, rgba(255, 209, 82, .10), transparent 30%),
    linear-gradient(145deg, rgba(25, 54, 76, .97), rgba(10, 32, 52, .99)) !important;
}
.tckb-center-module-body .tckb-exam-result.is-vacation .tckb-result-status,
.tckb-center-module-body .tckb-exam-result.is-vacation .tckb-result-score {
  color: #ffe18a !important;
  background: rgba(112, 79, 15, .30) !important;
  border-color: rgba(255, 207, 82, .34) !important;
}

.tckb-center-module-body .tckb-exam-result > .tckb-exam-result__body {
  padding: 14px 15px 16px !important;
  border-top: 1px solid rgba(111, 189, 232, .14) !important;
}


/* 1.9.1 — always-visible exam countdown mounted directly under <body>.
 * Moving the timer out of the module content prevents transformed/scrolling
 * Tecsa Center and Bitrix24 iframe containers from clipping or scrolling it. */
[data-tckb-floating-timer]:not(.is-mounted) {
  display: none !important;
}

body > .tckb-exam-timer--floating.is-mounted {
  position: fixed !important;
  top: max(12px, env(safe-area-inset-top)) !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateX(-50%) !important;
  z-index: 2147483647 !important;
  display: grid !important;
  grid-template-columns: auto auto !important;
  grid-template-areas:
    "state label"
    "state value" !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 0 !important;
  width: max-content !important;
  min-width: 248px !important;
  max-width: calc(100vw - 24px) !important;
  margin: 0 !important;
  padding: 9px 15px !important;
  border: 1px solid rgba(108, 222, 255, .42) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(145deg, rgba(20, 91, 146, .985), rgba(5, 35, 69, .99)) !important;
  box-shadow:
    0 16px 38px rgba(0, 10, 28, .52),
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.22) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  pointer-events: none !important;
  isolation: isolate !important;
}

body > .tckb-exam-timer--floating.is-mounted .tckb-exam-timer__state {
  grid-area: state;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-right: 12px;
  border-right: 1px solid rgba(135, 220, 248, .2);
  color: #eaf9ff;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

body > .tckb-exam-timer--floating.is-mounted .tckb-exam-timer__state i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #55e4aa;
  box-shadow: 0 0 0 5px rgba(85, 228, 170, .12), 0 0 14px rgba(85, 228, 170, .65);
}

body > .tckb-exam-timer--floating.is-mounted small {
  grid-area: label;
  display: block;
  color: #9edcf2 !important;
  font-size: 11px;
  line-height: 1.15;
  text-align: left;
  white-space: nowrap;
}

body > .tckb-exam-timer--floating.is-mounted strong {
  grid-area: value;
  display: block;
  color: #fff !important;
  font-size: 20px !important;
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
  letter-spacing: .02em;
  text-align: left;
  white-space: nowrap;
}

body > .tckb-exam-timer--floating.is-mounted.is-urgent {
  border-color: rgba(255, 171, 130, .58) !important;
  background: linear-gradient(145deg, rgba(135, 57, 47, .99), rgba(69, 25, 35, .99)) !important;
}

body > .tckb-exam-timer--floating.is-mounted.is-urgent .tckb-exam-timer__state i {
  background: #ffb05e;
  box-shadow: 0 0 0 5px rgba(255, 176, 94, .13), 0 0 14px rgba(255, 176, 94, .72);
}

.tckb-exam-summary-grid .tckb-exam-summary-time {
  border-color: rgba(91, 215, 249, .28);
  background: linear-gradient(145deg, rgba(11, 55, 94, .98), rgba(3, 31, 61, .99));
}

@media (max-width: 620px) {
  body > .tckb-exam-timer--floating.is-mounted {
    top: max(8px, env(safe-area-inset-top)) !important;
    min-width: 218px !important;
    padding: 8px 11px !important;
    column-gap: 9px !important;
    border-radius: 14px !important;
  }
  body > .tckb-exam-timer--floating.is-mounted .tckb-exam-timer__state {
    padding-right: 9px;
    font-size: 12px;
  }
  body > .tckb-exam-timer--floating.is-mounted strong {
    font-size: 18px !important;
  }
}

@media (min-width: 981px) {
  .tckb-exam-summary-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

/* 1.9.2 — persistent editable question bank. */
.tckb-question-add-button {
  gap: 7px;
  color: #ffffff !important;
  border-color: rgba(91, 219, 255, .46) !important;
  background: linear-gradient(145deg, #1ca7df, #1579bd) !important;
  box-shadow: 0 10px 22px rgba(0, 75, 125, .28), inset 0 1px 0 rgba(255,255,255,.2) !important;
}

.tckb-question-add-button > span {
  font-size: 19px;
  line-height: 1;
}

.tckb-question-create-panel,
.tckb-question-inline-editor {
  margin: 0 0 16px;
  padding: 18px;
  border: 1px solid rgba(91, 205, 246, .28);
  border-radius: 16px;
  background:
    radial-gradient(circle at 94% 0%, rgba(52, 177, 246, .13), transparent 32%),
    linear-gradient(145deg, rgba(7, 43, 78, .98), rgba(3, 27, 54, .99));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055), inset 0 -12px 28px rgba(0, 12, 29, .2), 0 14px 30px rgba(0, 12, 30, .2);
}

.tckb-question-inline-editor {
  margin: 0 14px 14px 64px;
}

.tckb-question-create-panel[hidden],
.tckb-question-inline-editor[hidden] {
  display: none !important;
}

.tckb-question-editor__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.tckb-question-editor__heading small {
  display: block;
  color: #62d7ff;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.tckb-question-editor__heading h3 {
  margin: 4px 0 0;
  color: #f4fbff;
  font-size: 20px;
  line-height: 1.25;
}

.tckb-question-create-panel > p,
.tckb-question-inline-editor > p {
  margin: 0 0 14px;
  color: #a9c9dc;
  line-height: 1.5;
}

.tckb-question-editor__close {
  display: grid !important;
  place-items: center;
  width: 34px;
  height: 34px;
  min-height: 34px !important;
  padding: 0 !important;
  border: 1px solid rgba(126, 202, 238, .23) !important;
  border-radius: 10px !important;
  color: #dff6ff !important;
  background: rgba(21, 76, 117, .64) !important;
  font-size: 23px;
  font-weight: 400 !important;
  line-height: 1;
  cursor: pointer;
}

.tckb-question-editor__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tckb-question-editor__grid label {
  display: grid;
  gap: 7px;
  margin: 0;
}

.tckb-question-editor__grid label.is-wide {
  grid-column: 1 / -1;
}

.tckb-question-editor__grid label > span {
  color: #dff4ff;
  font-size: 13px;
  font-weight: 800;
}

.tckb-question-editor__grid input,
.tckb-question-editor__grid textarea,
.tckb-question-editor__grid select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid rgba(111, 193, 234, .27);
  border-radius: 11px;
  color: #edf9ff !important;
  background: rgba(2, 25, 49, .86) !important;
  box-shadow: inset 0 2px 8px rgba(0, 8, 22, .25), inset 0 1px 0 rgba(255,255,255,.025);
  outline: none;
}

.tckb-question-editor__grid textarea {
  min-height: 88px;
  resize: vertical;
}

.tckb-question-editor__grid input:focus,
.tckb-question-editor__grid textarea:focus,
.tckb-question-editor__grid select:focus {
  border-color: rgba(91, 220, 255, .68);
  box-shadow: 0 0 0 3px rgba(34, 170, 224, .13), inset 0 2px 8px rgba(0, 8, 22, .25);
}

.tckb-question-editor__grid select option {
  color: #0c2338;
  background: #ffffff;
}

.tckb-question-editor__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 15px;
}

.tckb-question-editor__actions > span {
  margin-right: auto;
  color: #a9d6e9;
  font-size: 13px;
  font-weight: 750;
}

.tckb-question-editor__actions > span.is-error {
  color: #ffb3bd;
}

.tckb-question-editor__actions > span.is-success {
  color: #8df0c5;
}

.tckb-question-bank__item summary {
  grid-template-columns: 38px minmax(0, 1fr) auto 24px;
}

.tckb-question-lock-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 9px;
  border: 1px solid rgba(255, 204, 91, .28);
  border-radius: 999px;
  color: #ffe193;
  background: rgba(115, 78, 14, .3);
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.tckb-question-lock-note {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin: 0 14px 12px 64px;
  padding: 11px 13px;
  border: 1px solid rgba(255, 205, 91, .28);
  border-radius: 12px;
  color: #ffe6a8;
  background: rgba(105, 74, 17, .24);
}

.tckb-question-lock-note > span {
  font-size: 18px;
}

.tckb-question-lock-note strong,
.tckb-question-lock-note p {
  display: block;
}

.tckb-question-lock-note strong {
  color: #ffe8aa;
}

.tckb-question-lock-note p {
  margin: 3px 0 0;
  color: #d6c79e;
  font-size: 12px;
  line-height: 1.45;
}

.tckb-question-bank__expanded {
  display: grid;
  gap: 9px;
}

.tckb-question-bank__question-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 36px;
  align-items: center;
  gap: 10px;
  margin: 0 14px 9px 64px;
  padding: 11px 12px;
  border: 1px solid rgba(119, 190, 230, .16);
  border-radius: 11px;
  background: rgba(7, 43, 76, .64);
}

.tckb-question-bank__question-line small,
.tckb-question-bank__question-line strong {
  display: block;
}

.tckb-question-bank__question-line small {
  margin-bottom: 3px;
  color: #66d8ff;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.tckb-question-bank__question-line strong {
  color: #eff9ff;
  line-height: 1.4;
}

.tckb-question-bank__answers > div {
  grid-template-columns: 30px minmax(0, 1fr) auto 36px;
}

.tckb-question-bank__answers > div > .tckb-question-pencil {
  grid-column: 4;
}

.tckb-question-pencil {
  display: grid !important;
  place-items: center;
  width: 34px;
  height: 34px;
  min-height: 34px !important;
  padding: 0 !important;
  border: 1px solid rgba(101, 205, 244, .25) !important;
  border-radius: 10px !important;
  color: #7fe2ff !important;
  background: linear-gradient(145deg, rgba(26, 104, 158, .76), rgba(10, 59, 102, .82)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 7px 16px rgba(0, 15, 34, .18) !important;
  cursor: pointer;
}

.tckb-question-pencil:hover {
  color: #ffffff !important;
  border-color: rgba(98, 222, 255, .55) !important;
  transform: translateY(-1px);
}

.tckb-question-select-item.is-locked {
  border-color: rgba(255, 205, 91, .24);
}

@media (max-width: 760px) {
  .tckb-question-selector__toolbar > div {
    grid-template-columns: 1fr;
  }
  .tckb-question-add-button {
    grid-column: 1 / -1;
  }
  .tckb-question-editor__grid {
    grid-template-columns: 1fr;
  }
  .tckb-question-inline-editor,
  .tckb-question-lock-note,
  .tckb-question-bank__question-line {
    margin-left: 10px;
    margin-right: 10px;
  }
  .tckb-question-bank__answers {
    padding-left: 10px;
    padding-right: 10px;
  }
  .tckb-question-bank__item summary {
    grid-template-columns: 34px minmax(0, 1fr) 20px;
  }
  .tckb-question-lock-badge {
    grid-column: 2;
    justify-self: start;
  }
  .tckb-question-bank__item summary > i {
    grid-column: 3;
    grid-row: 1;
  }
  .tckb-question-editor__actions {
    align-items: stretch;
    flex-direction: column;
  }
  .tckb-question-editor__actions > span {
    margin: 0;
  }
  .tckb-question-editor__actions .tckb-ui-button {
    width: 100%;
  }
}

@media (min-width: 761px) {
  .tckb-question-bank__item summary > i {
    grid-column: 4;
  }
  .tckb-question-lock-badge {
    grid-column: 3;
  }
}

/* 2.0.0 — разделение обучения и экзаменов, типы экзаменов и импорт банка */
.tckb-module-subnav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  width: min(100%, 1500px);
  margin: 0 auto 18px;
  padding: 0 18px;
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
}
.tckb-module-subnav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 62px;
  padding: 12px 18px;
  border: 1px solid rgba(112, 191, 235, .18);
  border-radius: 16px;
  color: #bcd9ec;
  text-decoration: none;
  background: linear-gradient(145deg, rgba(14, 63, 103, .92), rgba(6, 35, 66, .96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 12px 28px rgba(0, 20, 43, .24);
}
.tckb-module-subnav a > span { color: #eef9ff; font-size: 16px; font-weight: 900; }
.tckb-module-subnav a > small { color: #82b6d5; font-size: 12px; font-weight: 700; text-align: right; }
.tckb-module-subnav a.is-active {
  border-color: rgba(86, 214, 255, .52);
  background: linear-gradient(145deg, rgba(23, 112, 171, .96), rgba(7, 52, 93, .98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11), inset 0 -8px 20px rgba(0, 25, 56, .18), 0 14px 30px rgba(0, 34, 70, .3);
}
.tckb-exam-type-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 18px;
}
.tckb-exam-type-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 280px;
  padding: 22px;
  border: 1px solid rgba(106, 196, 239, .2);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(18, 75, 119, .95), rgba(5, 35, 67, .98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), inset 0 -15px 28px rgba(0, 22, 47, .24), 0 18px 38px rgba(0, 17, 38, .3);
}
.tckb-exam-type-card header { display: flex; align-items: center; gap: 14px; }
.tckb-exam-type-card header > span {
  display: grid; place-items: center; width: 52px; height: 52px; flex: 0 0 52px;
  border: 1px solid rgba(128, 221, 255, .28); border-radius: 16px; color: #f1fbff;
  background: linear-gradient(145deg, #238bc9, #0c4d82); font-size: 22px; font-weight: 950;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 10px 20px rgba(0, 21, 46, .28);
}
.tckb-exam-type-card small { color: #71cce9; font-size: 11px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.tckb-exam-type-card h2 { margin: 3px 0 0; color: #f1f9ff; font-size: 24px; }
.tckb-exam-type-card > p { margin: 0; color: #b8d3e4; line-height: 1.55; }
.tckb-exam-type-card__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: auto; }
.tckb-exam-type-card__stats span { padding: 10px; border-radius: 12px; background: rgba(3, 32, 61, .52); box-shadow: inset 0 2px 8px rgba(0, 13, 31, .28); }
.tckb-exam-type-card__stats small, .tckb-exam-type-card__stats b { display: block; }
.tckb-exam-type-card__stats b { margin-top: 4px; color: #fff; font-size: 18px; }
.tckb-exam-type-card__actions { display: flex; flex-wrap: wrap; gap: 9px; }
.tckb-exam-type-card.is-coming { opacity: .72; border-style: dashed; }
.tckb-exam-admin-context { display: flex; flex-direction: column; gap: 2px; margin-right: auto; }
.tckb-exam-admin-context small { color: #76bddc; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.tckb-exam-admin-context strong { color: #f4fbff; font-size: 16px; }
.tckb-question-template-button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 14px;
  border: 1px solid rgba(99, 203, 242, .25); border-radius: 11px; color: #dcf6ff; text-decoration: none;
  background: linear-gradient(145deg, rgba(25, 100, 153, .82), rgba(8, 54, 94, .9));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 7px 16px rgba(0, 15, 34, .16);
  font-size: 12px; font-weight: 850;
}
.tckb-question-import {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 9px 12px;
  align-items: end;
  margin: 0 0 16px;
  padding: 14px;
  border: 1px solid rgba(99, 192, 231, .16);
  border-radius: 14px;
  background: rgba(4, 38, 70, .5);
  box-shadow: inset 0 3px 12px rgba(0, 18, 39, .22);
}
.tckb-question-import label span { display: block; margin-bottom: 7px; color: #d9effb; font-size: 12px; font-weight: 850; }
.tckb-question-import input[type="file"] { width: 100%; box-sizing: border-box; padding: 9px; border: 1px solid rgba(112, 190, 228, .22); border-radius: 10px; color: #d8edf8; background: rgba(2, 29, 56, .7); }
.tckb-question-import small { grid-column: 1 / -1; color: #83adc5; }
.tckb-question-import > strong { grid-column: 1 / -1; color: #8ee3bd; font-size: 12px; }
.tckb-question-import > strong.is-error { color: #ffaaa9; }
.tckb-question-bank-empty {
  margin: 12px 0 16px; padding: 22px; border: 1px dashed rgba(104, 199, 237, .3); border-radius: 16px;
  color: #a9cadd; text-align: center; background: rgba(5, 39, 70, .36);
}
.tckb-question-bank-empty strong { display: block; margin-bottom: 5px; color: #eefaff; font-size: 17px; }
.tckb-question-bank__answers > div { grid-template-columns: 30px minmax(0, 1fr) auto; }
.tckb-question-editor__actions .tckb-ui-button--danger { margin-right: auto; }

@media (max-width: 760px) {
  .tckb-module-subnav { grid-template-columns: 1fr; padding: 0 10px; }
  .tckb-module-subnav a { min-height: 54px; }
  .tckb-exam-type-grid { grid-template-columns: 1fr; }
  .tckb-exam-type-card__stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .tckb-question-import { grid-template-columns: 1fr; }
  .tckb-question-import .tckb-ui-button { width: 100%; }
}
.tckb-question-bank__question-line { grid-template-columns: minmax(0, 1fr) auto; }
.tckb-question-bank__question-actions { display: flex; gap: 7px; }
.tckb-question-delete {
  display: grid !important; place-items: center; width: 34px; height: 34px; min-height: 34px !important; padding: 0 !important;
  border: 1px solid rgba(255, 131, 140, .28) !important; border-radius: 10px !important; color: #ffadb3 !important;
  background: linear-gradient(145deg, rgba(132, 39, 54, .78), rgba(75, 20, 35, .86)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 7px 16px rgba(30, 0, 8, .2) !important; cursor: pointer;
}
.tckb-question-delete:hover { color: #fff !important; border-color: rgba(255, 153, 160, .58) !important; transform: translateY(-1px); }


/* 2.0.6 — full-width module section navigation. */
.tckb-module-subnav {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  align-items: stretch !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 16px 0 20px !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.tckb-module-subnav a {
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-content: center !important;
  justify-items: start !important;
  gap: 4px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 60px !important;
  padding: 12px 18px !important;
  border: 1px solid rgba(112, 191, 235, .18) !important;
  border-radius: 16px !important;
  color: #bcd9ec !important;
  background: linear-gradient(145deg, rgba(14, 63, 103, .92), rgba(6, 35, 66, .96)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 12px 28px rgba(0, 20, 43, .24) !important;
  text-decoration: none !important;
  white-space: normal !important;
  box-sizing: border-box !important;
}

.tckb-module-subnav a > span {
  color: #eef9ff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}

.tckb-module-subnav a > small {
  display: block !important;
  color: #82b6d5 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

.tckb-module-subnav a:hover {
  border-color: rgba(86, 214, 255, .32) !important;
  filter: brightness(1.03) !important;
}

.tckb-module-subnav a.is-active {
  border-color: rgba(86, 214, 255, .52) !important;
  color: #ffffff !important;
  background: linear-gradient(145deg, rgba(23, 112, 171, .96), rgba(7, 52, 93, .98)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11), inset 0 -8px 20px rgba(0, 25, 56, .18), 0 14px 30px rgba(0, 34, 70, .3) !important;
}

.tckb-exam-admin-topbar {
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 12px 14px !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.tckb-exam-admin-topbar .tckb-exam-admin-context {
  margin-right: 0 !important;
}

.tckb-exam-admin-topbar .tckb-exam-admin-tabs {
  margin-left: auto !important;
}

@media (max-width: 700px) {
  .tckb-module-subnav {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 12px 0 18px !important;
    padding: 0 10px !important;
  }

  .tckb-module-subnav a {
    min-height: 56px !important;
    padding: 11px 14px !important;
  }

  .tckb-exam-admin-topbar .tckb-exam-admin-tabs {
    margin-left: 0 !important;
    width: 100% !important;
  }
}

/* 2.0.7 — separate question bank editor and Excel export. */
.tckb-question-bank-page__hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin: 0 0 18px;
  padding: 22px 24px;
  border: 1px solid rgba(104, 200, 241, .2);
  border-radius: 18px;
  background:
    radial-gradient(circle at 90% 0%, rgba(55, 180, 246, .15), transparent 31%),
    linear-gradient(145deg, rgba(15, 67, 108, .95), rgba(5, 35, 67, .98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), inset 0 -14px 28px rgba(0, 20, 43, .2), 0 16px 34px rgba(0, 18, 40, .22);
}

.tckb-question-bank-page__hero > div > span {
  display: block;
  color: #68d8ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.tckb-question-bank-page__hero h1 {
  margin: 5px 0 7px;
  color: #f4fbff;
  font-size: clamp(25px, 2.2vw, 34px);
  line-height: 1.15;
}

.tckb-question-bank-page__hero p {
  max-width: 850px;
  margin: 0;
  color: #b4d2e4;
  line-height: 1.55;
}

.tckb-question-bank-page__hero > strong {
  display: grid;
  place-items: center;
  min-width: 112px;
  min-height: 88px;
  padding: 12px 18px;
  border: 1px solid rgba(108, 214, 252, .23);
  border-radius: 16px;
  color: #ffffff;
  background: rgba(5, 40, 73, .68);
  box-shadow: inset 0 2px 10px rgba(0, 16, 37, .3), 0 10px 22px rgba(0, 17, 38, .2);
  font-size: 29px;
  line-height: 1;
}

.tckb-question-bank-page__hero > strong small {
  display: block;
  margin-top: 5px;
  color: #7fc8e5;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.tckb-question-selector.is-editor-only {
  margin-top: 0;
}

.tckb-question-selector.is-editor-only .tckb-question-select-item {
  grid-template-columns: minmax(0, 1fr) !important;
  opacity: 1 !important;
}

.tckb-question-selector.is-editor-only .tckb-question-select-toggle {
  display: none !important;
}

.tckb-question-selector.is-editor-only .tckb-question-inline-editor {
  margin-left: 14px;
}

.tckb-question-export-button {
  border-color: rgba(104, 226, 182, .3) !important;
  color: #e7fff5 !important;
  background: linear-gradient(145deg, rgba(28, 128, 103, .88), rgba(12, 74, 75, .94)) !important;
}

.tckb-question-export-button:hover {
  border-color: rgba(126, 243, 199, .52) !important;
  filter: brightness(1.06);
}

@media (max-width: 760px) {
  .tckb-question-bank-page__hero {
    align-items: flex-start;
    flex-direction: column;
    padding: 18px;
  }

  .tckb-question-bank-page__hero > strong {
    grid-auto-flow: column;
    justify-content: start;
    min-width: 0;
    min-height: 0;
    width: 100%;
    gap: 8px;
    font-size: 23px;
  }

  .tckb-question-bank-page__hero > strong small {
    margin-top: 0;
  }

  .tckb-question-selector__toolbar > div {
    grid-template-columns: 1fr !important;
  }

  .tckb-question-selector__toolbar > div > a,
  .tckb-question-selector__toolbar > div > button {
    width: 100%;
  }
}

.tckb-question-selector__toolbar > div {
  flex-wrap: wrap;
  justify-content: flex-end;
}


/* 2.0.10 — absence-aware exams: vacation and business trip. */
.tckb-center-module-body .tckb-user-option.is-on-business-trip,
.tckb-user-option.is-on-business-trip {
  border-color: rgba(74, 206, 255, .52) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(74, 206, 255, .18), transparent 34%),
    linear-gradient(145deg, rgba(25, 70, 101, .97), rgba(11, 43, 70, .99)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 10px 24px rgba(0, 14, 31, .18) !important;
}
.tckb-center-module-body .tckb-user-option.is-absent,
.tckb-user-option.is-absent {
  border-color: rgba(255, 139, 164, .42) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(255, 139, 164, .13), transparent 34%),
    linear-gradient(145deg, rgba(54, 59, 82, .96), rgba(24, 39, 62, .98)) !important;
}
.tckb-user-absence.is-business_trip { color: #86e1ff !important; }
.tckb-user-absence.is-sick_leave,
.tckb-user-absence.is-day_off,
.tckb-user-absence.is-absence { color: #ffafbf !important; }
.tckb-user-picker__absence-legend {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid rgba(105, 188, 232, .16);
  border-radius: 12px;
  background: rgba(5, 31, 57, .38);
}
.tckb-user-picker__absence-legend > span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
}
.tckb-user-picker__absence-legend > span.is-vacation {
  color: #ffe18a;
  border: 1px solid rgba(255, 207, 82, .34);
  background: rgba(112, 79, 15, .30);
}
.tckb-user-picker__absence-legend > span.is-business-trip {
  color: #9be8ff;
  border: 1px solid rgba(74, 206, 255, .38);
  background: rgba(20, 104, 143, .34);
}
.tckb-user-picker__absence-legend > small {
  flex: 1 1 340px;
  color: #a9c7d9 !important;
  line-height: 1.35;
}
.tckb-exam-current__stats > div.is-business-trip {
  border-color: rgba(74, 206, 255, .28) !important;
  background: rgba(20, 104, 143, .26) !important;
}
.tckb-exam-current__stats > div.is-business-trip small,
.tckb-exam-current__stats > div.is-business-trip strong {
  color: #9be8ff !important;
}
.tckb-employee-exam-card.is-business-trip,
.tckb-center-module-body .tckb-exam-result.is-business-trip {
  border-color: rgba(74, 206, 255, .34) !important;
  background:
    radial-gradient(circle at 96% 0%, rgba(74, 206, 255, .11), transparent 30%),
    linear-gradient(145deg, rgba(23, 61, 87, .97), rgba(9, 36, 59, .99)) !important;
}
.tckb-employee-exam-card.is-business-trip > header > strong,
.tckb-center-module-body .tckb-exam-result.is-business-trip .tckb-result-status,
.tckb-center-module-body .tckb-exam-result.is-business-trip .tckb-result-score {
  color: #9be8ff !important;
  border-color: rgba(74, 206, 255, .34) !important;
  background: rgba(20, 104, 143, .30) !important;
}
.tckb-employee-exam-card.is-absence,
.tckb-center-module-body .tckb-exam-result.is-absence {
  border-color: rgba(255, 139, 164, .30) !important;
}
.tckb-absence-notice.is-business-trip {
  border-color: rgba(74, 206, 255, .35);
  color: #a8edff !important;
  background: linear-gradient(145deg, rgba(20, 104, 143, .28), rgba(13, 60, 91, .28));
}
.tckb-absence-notice.is-absence {
  border-color: rgba(255, 139, 164, .30);
  color: #ffc0cd !important;
  background: linear-gradient(145deg, rgba(108, 49, 66, .25), rgba(57, 39, 61, .26));
}

/* 2.0.12 — personal deadline shift for expired assignments. */
.tckb-deadline-shift-form {
  width: 100%;
  border-color: rgba(92, 211, 255, .27);
  background: linear-gradient(145deg, rgba(5, 42, 74, .78), rgba(4, 27, 51, .68));
}
.tckb-deadline-shift-form__deadline {
  display: grid;
  gap: 4px;
  min-width: 285px;
  padding: 8px 12px;
  border: 1px solid rgba(105, 198, 239, .16);
  border-radius: 12px;
  background: rgba(4, 25, 46, .46);
}
.tckb-deadline-shift-form__deadline small,
.tckb-deadline-shift-form__deadline em {
  color: #93c9e4;
  font-size: 11px;
  font-style: normal;
}
.tckb-deadline-shift-form__deadline strong {
  color: #f3fbff;
  font-size: 13px;
}
@media (max-width: 700px) {
  .tckb-deadline-shift-form__deadline { width: 100%; min-width: 0; }
}

/* ======================================================================
 * 2.1.0 — compact Education hierarchy + Important Announcements section
 * The parent Tecsa Center shell stays intact; only Education is tightened.
 * ====================================================================== */
.tc-app-shell.tc-app-shell-education .tc-ui-hero{
  height:82px!important;min-height:82px!important;max-height:82px!important;
  padding:10px 14px!important;border-radius:16px!important;gap:12px!important;
}
.tc-app-shell.tc-app-shell-education .tc-ui-hero-main{gap:11px!important}
.tc-app-shell.tc-app-shell-education .tc-ui-hero-icon{width:46px!important;height:46px!important;flex-basis:46px!important;border-radius:13px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 8px 18px rgba(21,62,168,.16)!important}
.tc-app-shell.tc-app-shell-education .tc-ui-hero-icon svg{width:25px!important;height:25px!important}
.tc-app-shell.tc-app-shell-education .tc-ui-hero .tc-ui-hero-eyebrow{margin-bottom:2px!important;font-size:9px!important;font-weight:650!important;letter-spacing:.075em!important}
.tc-app-shell.tc-app-shell-education .tc-ui-hero .tc-ui-hero-title{font-size:18px!important;font-weight:650!important;line-height:1.12!important;letter-spacing:-.01em!important}
.tc-app-shell.tc-app-shell-education .tc-ui-hero .tc-ui-hero-description{margin-top:3px!important;font-size:11px!important;font-weight:400!important;line-height:1.3!important}

.tc-app-shell-education .tckb-center-workspace,
.tc-app-shell-education .tckb-center-workspace *{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
.tc-app-shell-education .tckb-center-workspace{font-size:13px!important;font-weight:400!important}
.tc-app-shell-education .tckb-center-workspace h1,
.tc-app-shell-education .tckb-center-workspace h2,
.tc-app-shell-education .tckb-center-workspace h3,
.tc-app-shell-education .tckb-center-workspace strong,
.tc-app-shell-education .tckb-center-workspace b{font-weight:600!important}

/* Compact subsection navigation. */
.tc-app-shell-education .tckb-module-subnav{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;width:100%!important;max-width:none!important;
  margin:10px 0 12px!important;padding:0 18px!important;
}
.tc-app-shell-education .tckb-module-subnav.has-announcements{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.tc-app-shell-education .tckb-module-subnav a{
  min-height:46px!important;padding:8px 12px!important;border-radius:11px!important;gap:2px!important;
  background:linear-gradient(145deg,rgba(10,48,81,.76),rgba(5,31,58,.84))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 7px 16px rgba(0,18,38,.12)!important;
}
.tc-app-shell-education .tckb-module-subnav a>span{font-size:13px!important;font-weight:600!important;line-height:1.15!important;letter-spacing:0!important}
.tc-app-shell-education .tckb-module-subnav a>small{font-size:10px!important;font-weight:400!important;line-height:1.2!important;color:#759bb5!important}
.tc-app-shell-education .tckb-module-subnav a.is-active{
  border-color:rgba(83,203,248,.4)!important;
  background:linear-gradient(145deg,rgba(24,109,166,.88),rgba(8,57,98,.93))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 18px rgba(0,30,61,.17)!important;
}

/* Learning home: one concise full-width course row, no giant empty half-screen card. */
.tc-app-shell-education .tckb-learning-hub{padding:2px 18px 34px!important}
.tc-app-shell-education .tckb-learning-grid{grid-template-columns:1fr!important;gap:12px!important}
.tc-app-shell-education .tckb-learning-card{
  min-height:0!important;padding:16px 17px!important;border-radius:15px!important;
  box-shadow:0 10px 24px rgba(1,13,29,.18),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.tc-app-shell-education .tckb-learning-card__header{gap:11px!important;margin-bottom:9px!important}
.tc-app-shell-education .tckb-learning-card__icon{width:42px!important;height:42px!important;flex-basis:42px!important;border-radius:12px!important;box-shadow:0 7px 16px rgba(3,26,57,.2),inset 0 1px 0 rgba(255,255,255,.18)!important}
.tc-app-shell-education .tckb-learning-card__svg{width:22px!important;height:22px!important}
.tc-app-shell-education .tckb-learning-card__eyebrow,
.tc-app-shell-education .tckb-learning-card__header span{margin-bottom:2px!important;font-size:9px!important;font-weight:600!important;letter-spacing:.05em!important}
.tc-app-shell-education .tckb-learning-card h2,
.tc-app-shell-education .tckb-learning-card__header h2{font-size:17px!important;font-weight:600!important;line-height:1.2!important}
.tc-app-shell-education .tckb-learning-card__description{max-width:980px!important;font-size:12px!important;line-height:1.5!important;color:#a8c1d4!important}
.tc-app-shell-education .tckb-learning-card__features{gap:6px!important;margin-top:10px!important}
.tc-app-shell-education .tckb-learning-card__features span{min-height:24px!important;padding:3px 8px!important;font-size:10px!important;font-weight:500!important}
.tc-app-shell-education .tckb-learning-card__actions{gap:7px!important;margin-top:0!important;padding-top:13px!important}
.tc-app-shell-education .tckb-learning-button,
.tc-app-shell-education .tckb-ui-button,
.tc-app-shell-education .tckb-exam-primary{
  min-height:36px!important;padding:0 12px!important;border-radius:9px!important;font-size:12px!important;font-weight:600!important;
  box-shadow:0 7px 16px rgba(2,25,51,.19),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.tc-app-shell-education .tckb-learning-admin-strip{
  grid-template-columns:40px minmax(0,1fr) auto!important;gap:11px!important;margin-top:12px!important;padding:12px 14px!important;border-radius:14px!important;
  box-shadow:0 9px 22px rgba(1,14,31,.16),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.tc-app-shell-education .tckb-learning-admin-strip__icon{width:40px!important;height:40px!important;border-radius:12px!important;font-size:18px!important}
.tc-app-shell-education .tckb-learning-admin-strip span{font-size:9px!important;font-weight:600!important;letter-spacing:.05em!important}
.tc-app-shell-education .tckb-learning-admin-strip h2{margin:2px 0!important;font-size:15px!important;font-weight:600!important}
.tc-app-shell-education .tckb-learning-admin-strip p{font-size:11px!important;line-height:1.35!important}

/* Exam index and status pages: compact local heading + dense cards. */
.tc-app-shell-education .tckb-exam-page,
.tc-app-shell-education .tckb-exam-admin{padding:2px 18px 34px!important}
.tc-app-shell-education .tckb-exam-status-page{padding-top:2px!important}
.tc-app-shell-education .tckb-exam-status-hero,
.tc-app-shell-education .tckb-exam-results-index,
.tc-app-shell-education .tckb-question-bank-page__hero{
  gap:14px!important;margin:0 0 12px!important;padding:14px 16px!important;border-radius:14px!important;
  box-shadow:0 9px 22px rgba(1,18,37,.15),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.tc-app-shell-education .tckb-exam-status-hero span,
.tc-app-shell-education .tckb-exam-results-index span,
.tc-app-shell-education .tckb-question-bank-page__hero>div>span{font-size:9px!important;font-weight:600!important;letter-spacing:.055em!important}
.tc-app-shell-education .tckb-exam-status-hero h1,
.tc-app-shell-education .tckb-exam-results-index h2,
.tc-app-shell-education .tckb-question-bank-page__hero h1{margin:3px 0 4px!important;font-size:22px!important;font-weight:500!important;line-height:1.16!important;letter-spacing:-.01em!important}
.tc-app-shell-education .tckb-exam-status-hero p,
.tc-app-shell-education .tckb-exam-results-index p,
.tc-app-shell-education .tckb-question-bank-page__hero p{font-size:11px!important;line-height:1.4!important;color:#9eb9cd!important}
.tc-app-shell-education .tckb-exam-status-hero__actions{gap:7px!important;justify-content:flex-end!important}
.tc-app-shell-education .tckb-exam-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.tc-app-shell-education .tckb-exam-type-card{
  min-height:0!important;gap:10px!important;padding:15px!important;border-radius:15px!important;
  box-shadow:0 10px 24px rgba(0,17,38,.17),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.tc-app-shell-education .tckb-exam-type-card header{gap:10px!important}
.tc-app-shell-education .tckb-exam-type-card header>span{width:40px!important;height:40px!important;flex-basis:40px!important;border-radius:11px!important;font-size:16px!important;font-weight:600!important;box-shadow:0 6px 14px rgba(0,21,46,.18),inset 0 1px 0 rgba(255,255,255,.12)!important}
.tc-app-shell-education .tckb-exam-type-card small{font-size:9px!important;font-weight:600!important;letter-spacing:.045em!important}
.tc-app-shell-education .tckb-exam-type-card h2{font-size:17px!important;font-weight:600!important}
.tc-app-shell-education .tckb-exam-type-card>p{font-size:11px!important;line-height:1.45!important;color:#9fb9cc!important}
.tc-app-shell-education .tckb-exam-type-card__stats{gap:6px!important;margin-top:2px!important}
.tc-app-shell-education .tckb-exam-type-card__stats span{padding:7px 8px!important;border-radius:9px!important}
.tc-app-shell-education .tckb-exam-type-card__stats b{margin-top:2px!important;font-size:14px!important;font-weight:600!important}
.tc-app-shell-education .tckb-exam-type-card__actions{gap:6px!important}

/* Exam runs/results: smaller headings, metrics and padding. */
.tc-app-shell-education .tckb-exam-status-list,
.tc-app-shell-education .tckb-employee-exam-list,
.tc-app-shell-education .tckb-exam-results-accordion{gap:11px!important}
.tc-app-shell-education .tckb-exam-current,
.tc-app-shell-education .tckb-employee-exam-card,
.tc-app-shell-education .tckb-exam-results-group,
.tc-app-shell-education .tckb-exam-admin-card{padding:14px 15px!important;border-radius:14px!important;box-shadow:0 9px 22px rgba(1,12,27,.16),inset 0 1px 0 rgba(255,255,255,.035)!important}
.tc-app-shell-education .tckb-exam-current h2,
.tc-app-shell-education .tckb-employee-exam-card h2,
.tc-app-shell-education .tckb-exam-admin-card h2{font-size:16px!important;font-weight:600!important;line-height:1.25!important}
.tc-app-shell-education .tckb-exam-current__description{margin:-1px 0 9px!important;font-size:11px!important;line-height:1.4!important}
.tc-app-shell-education .tckb-exam-current__stats{gap:7px!important}
.tc-app-shell-education .tckb-exam-current__stats>div{padding:8px 9px!important;border-radius:9px!important}
.tc-app-shell-education .tckb-exam-current__stats small{font-size:9px!important;font-weight:500!important}
.tc-app-shell-education .tckb-exam-current__stats strong{margin-top:3px!important;font-size:13px!important;font-weight:600!important}
.tc-app-shell-education .tckb-exam-current__actions{gap:6px!important;margin-top:10px!important}
.tc-app-shell-education .tckb-exam-admin-card__title{margin:-1px -1px 12px!important;padding:11px 12px!important;border-radius:11px!important}
.tc-app-shell-education .tckb-exam-admin-tabs{padding:6px!important;border-radius:11px!important}
.tc-app-shell-education .tckb-exam-admin-tabs a{margin:0 2px!important}
.tc-app-shell-education .tckb-exam-form-grid{gap:10px!important}
.tc-app-shell-education .tckb-exam-form-grid label,
.tc-app-shell-education .tckb-user-picker header,
.tc-app-shell-education .tckb-user-picker footer,
.tc-app-shell-education .tckb-question-selector__toolbar{padding:10px!important;border-radius:10px!important}
.tc-app-shell-education .tckb-exam-form-grid input,
.tc-app-shell-education .tckb-exam-form-grid textarea,
.tc-app-shell-education .tckb-exam-form-grid select,
.tc-app-shell-education .tckb-user-picker input[type="search"]{min-height:36px!important;border-radius:9px!important;font-size:12px!important;font-weight:400!important}

@media(max-width:1100px){
  .tc-app-shell-education .tckb-exam-current__stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .tc-app-shell-education .tckb-module-subnav,
  .tc-app-shell-education .tckb-module-subnav.has-announcements{grid-template-columns:1fr!important;padding:0 10px!important}
  .tc-app-shell-education .tckb-module-subnav a{min-height:43px!important;padding:7px 10px!important}
  .tc-app-shell-education .tckb-learning-hub,
  .tc-app-shell-education .tckb-exam-page,
  .tc-app-shell-education .tckb-exam-admin{padding-left:10px!important;padding-right:10px!important}
  .tc-app-shell-education .tckb-exam-type-grid{grid-template-columns:1fr!important}
  .tc-app-shell-education .tckb-exam-status-hero,
  .tc-app-shell-education .tckb-question-bank-page__hero{align-items:flex-start!important;flex-direction:column!important}
  .tc-app-shell-education .tckb-learning-admin-strip{grid-template-columns:40px minmax(0,1fr)!important}
  .tc-app-shell-education .tckb-learning-admin-strip .tckb-learning-button{grid-column:1/-1!important;justify-self:start!important}
}
@media(max-width:760px){
  .tc-app-shell.tc-app-shell-education .tc-ui-hero{height:auto!important;min-height:0!important;max-height:none!important;padding:10px!important}
  .tc-app-shell.tc-app-shell-education .tc-ui-hero-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
  .tc-app-shell.tc-app-shell-education .tc-ui-hero .tc-ui-hero-title{font-size:17px!important}
  .tc-app-shell.tc-app-shell-education .tc-ui-hero .tc-ui-hero-description{font-size:10px!important}
  .tc-app-shell-education .tckb-exam-current__stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
