/* LernLab Designsystem v1.1 — Course 6 plus shared Staging branding and login. */
@font-face {
  font-family: "LernLab Sora";
  src: url("/local/code_to_course/fonts/Sora-latin-variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
}
@font-face {
  font-family: "LernLab Source Sans 3";
  src: url("/local/code_to_course/fonts/SourceSans3-latin-variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

body:is(.course-6, .lernlab-managed-course),
body#page-login-index,
.lernlab-preview {
  --ll-navy: #0b2d4a;
  --ll-primary: #2563eb;
  --ll-primary-hover: #1d4ed8;
  --ll-primary-active: #1e40af;
  --ll-cyan: #06b6d4;
  --ll-teal: #14b8a6;
  --ll-bg: #ffffff;
  --ll-subtle: #f8fafc;
  --ll-surface: #ffffff;
  --ll-border: #e2e8f0;
  --ll-body: #334155;
  --ll-secondary: #64748b;
  --ll-muted: #94a3b8;
  --ll-success-bg: #d1fae5;
  --ll-success: #047857;
  --ll-info-bg: #dbeafe;
  --ll-info: #1d4ed8;
  --ll-warning-bg: #fef3c7;
  --ll-warning: #b45309;
  --ll-error-bg: #fce7f3;
  --ll-error: #be123c;
  --ll-scratch: #f59e0b;
  --ll-scratch-bg: #fff3c7;
  --ll-text: #3b82f6;
  --ll-text-bg: #dbeafe;
  --ll-python: #10b981;
  --ll-python-bg: #d1fae5;
  --ll-project: #8b5cf6;
  --ll-project-bg: #ede9fe;
  --ll-radius-input: 8px;
  --ll-radius-button: 10px;
  --ll-radius-card: 12px;
  --ll-radius-section: 16px;
  --ll-shadow-soft: 0 8px 24px rgba(11, 45, 74, .08);
  --ll-font-heading: "LernLab Sora", "Segoe UI", sans-serif;
  --ll-font-body: "LernLab Source Sans 3", "Segoe UI", sans-serif;
}

/* Moodle shell. The course class is the hard scope boundary. */
body:is(.course-6, .lernlab-managed-course) {
  --ll-content-max: 960px;
  background: #ffffff;
  color: var(--ll-body);
  font: 400 17px/27px var(--ll-font-body);
}
body:is(.course-6, .lernlab-managed-course) :where(button, input, select, textarea) { font-family: var(--ll-font-body); }
body:is(.course-6, .lernlab-managed-course) :where(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4) {
  color: var(--ll-navy);
  font-family: var(--ll-font-heading);
  font-weight: 700;
  letter-spacing: -.02em;
}
body:is(.course-6, .lernlab-managed-course) :where(h1, .h1) { font-size: 40px; line-height: 48px; }
body:is(.course-6, .lernlab-managed-course) :where(h2, .h2) { font-size: 30px; line-height: 38px; }
body:is(.course-6, .lernlab-managed-course) :where(h3, .h3) { font-size: 24px; line-height: 32px; }
body:is(.course-6, .lernlab-managed-course) :where(h4, .h4) { font-size: 19px; line-height: 27px; }
body:is(.course-6, .lernlab-managed-course) #page { background: #ffffff; }
body:is(.course-6, .lernlab-managed-course) #page.drawers .main-inner,
body:is(.course-6, .lernlab-managed-course) .activity-wrapper,
body:is(.course-6, .lernlab-managed-course) .activity-header,
body:is(.course-6, .lernlab-managed-course) .secondary-navigation .navigation {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) #page.drawers .main-inner {
  width: calc(100% - clamp(32px, 4vw, 64px));
  max-width: var(--ll-content-max);
  margin-inline: auto;
  padding-inline: 0;
  background: #ffffff;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) :where(#page-header, #page-content, #region-main, .activity-wrapper, .activity-header) {
  width: 100%;
  max-width: var(--ll-content-max);
  margin-inline: auto;
  background: #ffffff;
}
body:is(.course-6, .lernlab-managed-course) .secondary-navigation,
body:is(.course-6, .lernlab-managed-course) .secondary-navigation .navigation,
body:is(.course-6, .lernlab-managed-course) .secondary-navigation .navigation .nav-tabs {
  width: 100%;
  max-width: var(--ll-content-max);
  margin-inline: auto;
}
body:is(.course-6, .lernlab-managed-course) .secondary-navigation .navigation { padding-inline: 0; }
body:is(.course-6, .lernlab-managed-course).path-mod .activity-header {
  max-width: 100%;
  margin-inline: auto !important;
}
body:is(.course-6, .lernlab-managed-course) :where(.activity-description, #intro.generalbox) {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) .navbar.fixed-top {
  border-bottom: 1px solid rgba(226, 232, 240, .8);
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 2px 10px rgba(11, 45, 74, .04);
}
body:is(.course-6, .lernlab-managed-course) .navbar :where(.nav-link, .btn) { min-height: 44px; border-radius: var(--ll-radius-button); }
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex :where(.drawerheader, .drawercontent),
body:is(.course-6, .lernlab-managed-course) :where(.drawer-left, .drawer-primary) {
  border-right: 0;
  background: var(--ll-navy);
  color: #ffffff;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex :where(.btn, .icon, .courseindex-chevron) { color: #ffffff; }
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .drawercontent {
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, .48) var(--ll-navy);
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .drawercontent::-webkit-scrollbar { width: 8px; }
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .drawercontent::-webkit-scrollbar-track { background: var(--ll-navy); }
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .drawercontent::-webkit-scrollbar-thumb {
  border: 2px solid var(--ll-navy);
  border-radius: 999px;
  background: rgba(255, 255, 255, .48);
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex :where(.courseindex-section, .courseindex-section.current, .courseindex-item-content) {
  border-left: 0;
  background: transparent;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item {
  min-height: 44px;
  margin-block: 2px;
  border-radius: var(--ll-radius-input);
  background: transparent;
  color: #ffffff;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item > :where(.courseindex-link, .courseindex-chevron, span, .icon, svg),
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item > :where(.courseindex-link, .courseindex-chevron, span, .icon, svg):hover,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item > :where(.courseindex-link, .courseindex-chevron, span, .icon, svg):focus {
  background: transparent;
  box-shadow: none;
  color: inherit;
  text-decoration: none;
}
body:is(.course-6, .lernlab-managed-course) .courseindex :where(.courseindex-link, .courseindex-section-title, .courseindex-item-content) {
  color: inherit;
  overflow-wrap: anywhere;
  white-space: normal;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-link,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-link:visited,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-link:hover,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-link:focus {
  color: #ffffff;
  text-decoration: none;
}
body:is(.course-6, .lernlab-managed-course) .courseindex .courseindex-item :where(.icon, .completioninfo) { color: currentColor; }
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"]:is(.active, .pageitem) {
  background: var(--ll-info-bg);
  color: var(--ll-navy);
  font-weight: 700;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"]:is(.active, .pageitem):hover,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"]:is(.active, .pageitem):focus-within {
  background: var(--ll-info-bg);
  color: var(--ll-navy);
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"]:is(.active, .pageitem)
  :where(.courseindex-link, .courseindex-link:visited, .courseindex-link:hover, .courseindex-link:focus, span, .icon, svg) {
  color: var(--ll-navy);
  text-decoration: none;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item:not(.active, .pageitem):hover,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="section_item"]:hover {
  background: rgba(255, 255, 255, .11);
  color: #ffffff;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item-content :where(ul, li),
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item :where(.pageitem, [data-for="section_title"]),
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item :where(.pageitem, [data-for="section_title"]):hover {
  background: transparent;
  color: inherit;
  text-decoration: none;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-section.current .current-badge {
  padding: 0;
  background: transparent !important;
  color: inherit;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item {
  align-items: center;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item > .courseindex-link {
  flex: 1 1 auto;
  order: 1;
  min-width: 0;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item > .completioninfo {
  flex: 0 0 auto;
  order: 2;
  margin-left: auto;
  padding-left: 8px;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item > .completioninfo.completion_none:empty {
  display: none;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item > .completioninfo :where(.icon, img) {
  margin: 0;
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .courseindex-item[data-for="cm"].ll-course-index-item > .courseindex-locked {
  order: 3;
}
body:is(.course-6, .lernlab-managed-course) .drawer-toggler .btn {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-button);
  background: var(--ll-surface);
  color: var(--ll-navy);
  box-shadow: var(--ll-shadow-soft);
}
nav.navbar.fixed-top a.navbar-brand.ll-site-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transform: none;
  transition: none;
}
nav.navbar.fixed-top a.navbar-brand > img.ll-site-logo {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  object-fit: contain;
  object-position: center;
}
nav.navbar.fixed-top a.navbar-brand .ll-brand-name {
  color: #0b2d4a;
  font: 700 20px/24px "Segoe UI", sans-serif;
}

/* Staging login: quiet W1 Soft Depth shell; authentication markup stays native. */
body#page-login-index {
  min-width: 0;
  background: #ffffff;
  color: var(--ll-body);
  font: 400 17px/27px var(--ll-font-body);
}
body#page-login-index #page-wrapper,
body#page-login-index #page,
body#page-login-index #page-content { min-width: 0; background: #ffffff; }
body#page-login-index #page-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
  min-height: 100dvh !important;
  margin: 0;
}
body#page-login-index .login-layout-left,
body#page-login-index .login-layout-right { width: auto; max-width: none; }
body#page-login-index .login-layout-left {
  position: relative;
  display: flex !important;
  min-width: 0;
  align-items: center;
  overflow: hidden;
  padding: clamp(48px, 7vw, 112px);
  background: #0b2d4a !important;
  background-image:
    radial-gradient(circle at 78% 18%, rgba(6, 182, 212, .26), transparent 31%),
    radial-gradient(circle at 12% 82%, rgba(37, 99, 235, .34), transparent 36%) !important;
  color: #ffffff;
}
body#page-login-index .login-layout-left::before,
body#page-login-index .login-layout-left::after {
  position: absolute;
  content: "";
  pointer-events: none;
}
body#page-login-index .login-layout-left::before {
  right: -11%;
  bottom: -17%;
  width: min(34vw, 520px);
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 34% 66% 58% 42%;
  background: rgba(20, 184, 166, .13);
  transform: rotate(-10deg);
}
body#page-login-index .login-layout-left::after {
  top: 12%;
  right: 9%;
  width: 96px;
  height: 96px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 24px;
  transform: rotate(12deg);
}
body#page-login-index .login-layout-left-content {
  position: relative;
  z-index: 1;
  width: min(100%, 620px);
  margin: 0 auto;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  text-align: left;
}
body#page-login-index .ll-login-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  font: 700 24px/30px var(--ll-font-heading);
}
body#page-login-index .login-layout-left .ll-login-brand,
body#page-login-index .login-layout-left .ll-login-brand span { color: #ffffff !important; }
body#page-login-index .ll-login-brand img {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: contain;
}
body#page-login-index .login-layout-left h1 {
  max-width: 12ch;
  margin: clamp(44px, 9vh, 96px) 0 16px;
  color: #ffffff;
  font: 700 clamp(38px, 5vw, 64px)/1.08 var(--ll-font-heading);
  letter-spacing: -.035em;
}
body#page-login-index .ll-login-message {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 20px;
  line-height: 30px;
}
body#page-login-index .ll-login-visual {
  display: grid;
  grid-template-columns: repeat(4, minmax(52px, 84px));
  gap: 14px;
  margin-top: clamp(42px, 8vh, 84px);
}
body#page-login-index .ll-login-visual span {
  height: 58px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 14px;
  background: rgba(37, 99, 235, .5);
}
body#page-login-index .ll-login-visual span:nth-child(2) { background: rgba(6, 182, 212, .55); transform: translateY(18px); }
body#page-login-index .ll-login-visual span:nth-child(3) { background: rgba(20, 184, 166, .48); }
body#page-login-index .ll-login-visual span:nth-child(4) { background: rgba(255, 255, 255, .13); transform: translateY(18px); }
body#page-login-index .login-layout-right {
  display: grid;
  min-width: 0;
  place-items: center;
  padding: clamp(32px, 6vw, 88px);
  background: #ffffff;
}
body#page-login-index .login-layout-right-content,
body#page-login-index .login-container {
  width: min(100%, 480px);
  margin: 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body#page-login-index #loginlogo {
  justify-content: flex-start !important;
  gap: 12px;
  margin-bottom: 44px !important;
}
body#page-login-index .ll-login-brand--compact { color: var(--ll-navy); font-size: 22px; line-height: 28px; }
body#page-login-index .ll-login-brand--compact img { width: 52px; height: 52px; }
body#page-login-index .ll-login-stage {
  padding: 4px 9px;
  border-radius: 999px;
  background: var(--ll-info-bg);
  color: var(--ll-primary-active);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
}
body#page-login-index .loginform > h1 {
  margin-bottom: 8px;
  color: var(--ll-navy);
  font: 700 36px/44px var(--ll-font-heading);
  letter-spacing: -.025em;
}
body#page-login-index .loginform > h1 + p { margin-bottom: 32px !important; color: var(--ll-secondary) !important; }
body#page-login-index .form-label { margin-bottom: 7px; color: var(--ll-navy); font-weight: 600; }
body#page-login-index .form-control {
  min-height: 48px;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-input);
  color: var(--ll-body);
  font: inherit;
  box-shadow: none;
}
body#page-login-index .form-control:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  border-color: var(--ll-primary);
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}
body#page-login-index #loginbtn {
  min-height: 48px;
  border: 1px solid var(--ll-primary);
  border-radius: var(--ll-radius-button);
  background: var(--ll-primary);
  color: #ffffff;
  font-weight: 700;
  box-shadow: none;
}
body#page-login-index #loginbtn:hover { border-color: var(--ll-primary-hover); background: var(--ll-primary-hover); }
body#page-login-index :where(a, .btn-link) { color: var(--ll-secondary); text-decoration: none; }
body#page-login-index :where(a, .btn-link):hover { background: transparent; color: var(--ll-secondary); text-decoration: none; }
body#page-login-index :where(a, button, input, select, [tabindex]):focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}
body#page-login-index .login-languagemenu { margin-block: 40px 24px !important; }

@media (max-width: 991.98px) {
  body#page-login-index #page-content { grid-template-columns: 1fr; }
  body#page-login-index .login-layout-left {
    height: 260px !important;
    min-height: 260px !important;
    padding: 32px clamp(28px, 7vw, 64px);
  }
  body#page-login-index .login-layout-left-content { width: min(100%, 640px); }
  body#page-login-index .login-layout-left h1 { max-width: none; margin: 22px 0 6px; font-size: 36px; line-height: 44px; }
  body#page-login-index .ll-login-visual { position: absolute; right: 0; bottom: 0; margin: 0; opacity: .72; }
  body#page-login-index .login-layout-right {
    min-height: calc(100dvh - 260px) !important;
    padding: 48px clamp(28px, 8vw, 72px) 64px;
  }
}

@media (max-width: 575.98px) {
  body#page-login-index .login-layout-left {
    height: 150px !important;
    min-height: 150px !important;
    padding: 20px 24px;
  }
  body#page-login-index .ll-login-brand { gap: 8px; font-size: 19px; line-height: 24px; }
  body#page-login-index .ll-login-brand img { width: 42px; height: 42px; }
  body#page-login-index .login-layout-left h1 { margin: 14px 0 0; font-size: 26px; line-height: 32px; }
  body#page-login-index .ll-login-message,
  body#page-login-index .ll-login-visual { display: none; }
  body#page-login-index .login-layout-right {
    min-height: 0 !important;
    align-items: start;
    padding: 32px 24px 48px;
  }
  body#page-login-index #loginlogo { margin-bottom: 28px !important; }
  body#page-login-index .loginform > h1 { font-size: 30px; line-height: 38px; }
}
body:is(.course-6, .lernlab-managed-course) :where(.btn-primary, input[type="submit"].btn-primary) {
  min-height: 44px;
  border-color: var(--ll-primary);
  border-radius: var(--ll-radius-button);
  background: var(--ll-primary);
  color: #fff;
  font-weight: 600;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) :where(.btn-primary, input[type="submit"].btn-primary):hover { border-color: var(--ll-primary-hover); background: var(--ll-primary-hover); }
body:is(.course-6, .lernlab-managed-course) :where(.btn-primary, input[type="submit"].btn-primary):active { border-color: var(--ll-primary-active); background: var(--ll-primary-active); }
body:is(.course-6, .lernlab-managed-course) :where(.btn-secondary, .btn-outline-secondary) {
  min-height: 44px;
  border-color: var(--ll-border);
  border-radius: var(--ll-radius-button);
  background: var(--ll-surface);
  color: var(--ll-navy);
}
body:is(.course-6, .lernlab-managed-course) :where(.form-control, .custom-select, select, textarea) {
  min-height: 44px;
  border-color: var(--ll-border);
  border-radius: var(--ll-radius-input);
  color: var(--ll-body);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}
@supports selector(:focus-visible) {
  nav.navbar.fixed-top a.navbar-brand:focus:not(:focus-visible),
  body:is(.course-6, .lernlab-managed-course) :where(a, button, .btn, .courseindex-link, #page-navbar .breadcrumb a):focus:not(:focus-visible),
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-next, .lernlab-resource-card):focus:not(:focus-visible),
  body#page-login-index :where(a, button, input, select, [tabindex]):focus:not(:focus-visible) {
    outline: 0;
    box-shadow: none;
    transform: none;
  }
}
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex :where(.courseindex-section, .courseindex-item):focus,
body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex :where(.courseindex-section, .courseindex-item):focus-within {
  outline: 0;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) #page-navbar .breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 0;
  margin-bottom: 12px;
  padding: 0;
  background: transparent;
  color: var(--ll-secondary);
  font-size: 14px;
  line-height: 20px;
  white-space: normal;
  list-style: none;
}
body:is(.course-6, .lernlab-managed-course) #page-navbar .breadcrumb-item { min-width: 0; overflow-wrap: anywhere; }
body:is(.course-6, .lernlab-managed-course) #page-navbar .breadcrumb-item + .breadcrumb-item::before {
  content: "";
  width: 14px;
  height: 14px;
  margin: 3px 8px 0 4px;
  padding: 0;
  background: url("/local/code_to_course/pix/lucide/chevron-right.svg") center / contain no-repeat;
}
body:is(.course-6, .lernlab-managed-course) #page-navbar .breadcrumb-item a { color: var(--ll-secondary); }
body:is(.course-6, .lernlab-managed-course) #page-navbar .breadcrumb-item [aria-current="page"] { color: var(--ll-navy); font-weight: 600; }
body:is(.course-6, .lernlab-managed-course) .course-section {
  margin-block: 16px;
  border: 0;
  border-bottom: 1px solid var(--ll-border);
  border-radius: 0;
  background: transparent;
}
body:is(.course-6, .lernlab-managed-course) .course-section .sectionname > a {
  color: var(--ll-navy);
  text-decoration-color: var(--ll-cyan);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
body:is(.course-6, .lernlab-managed-course) .activity-item { border: 0; border-bottom: 1px solid var(--ll-border); border-radius: 0; background: var(--ll-surface); }
body:is(.course-6, .lernlab-managed-course) .activity-item:hover { background: var(--ll-surface); }
body:is(.course-6, .lernlab-managed-course) .activityiconcontainer { border-radius: var(--ll-radius-input); }
body:is(.course-6, .lernlab-managed-course) .activityiconcontainer:has(img.ll-adapted-image) { background: var(--ll-info-bg); }
body:is(.course-6, .lernlab-managed-course) .activityiconcontainer img.ll-adapted-image { width: 24px; height: 24px; object-fit: contain; }
body:is(.course-6, .lernlab-managed-course) #page-header .page-context-header .page-header-image:has(img.ll-adapted-image),
body:is(.course-6, .lernlab-managed-course) #page-header .page-context-header .page-header-image .activityiconcontainer:has(img.ll-adapted-image),
body:is(.course-6, .lernlab-managed-course) [data-for="page-activity-header"] .activityiconcontainer:has(img.ll-adapted-image),
body:is(.course-6, .lernlab-managed-course) .activity-header .activityiconcontainer:has(img.ll-adapted-image) {
  flex: 0 0 36px;
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
}
body:is(.course-6, .lernlab-managed-course) #page-header .page-context-header .page-header-image img.ll-adapted-image,
body:is(.course-6, .lernlab-managed-course) [data-for="page-activity-header"] .activityiconcontainer img.ll-adapted-image,
body:is(.course-6, .lernlab-managed-course) .activity-header .activityiconcontainer img.ll-adapted-image {
  width: 34px;
  height: 34px;
  filter: none;
  object-fit: contain;
}
body:is(.course-6, .lernlab-managed-course) .courseindex .ll-course-index-item .courseindex-link::before {
  content: "";
  display: inline-block;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: currentColor;
  -webkit-mask: var(--ll-course-icon) center / contain no-repeat;
  mask: var(--ll-course-icon) center / contain no-repeat;
  vertical-align: -.25em;
}

/* Managed learning content and generated review. */
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui {
  width: 100%;
  max-width: var(--ll-content-max, 960px);
  margin-inline: 0;
  color: var(--ll-body);
  font: 400 17px/27px var(--ll-font-body);
  overflow-wrap: anywhere;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui,
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui *,
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui *::before,
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui *::after { box-sizing: border-box; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui > :first-child { margin-top: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui > :last-child { margin-bottom: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui > p:not([class]) { max-width: 72ch; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui p { margin-block: 0 16px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui strong { color: var(--ll-navy); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui a:not(.lernlab-next):not(.lernlab-resource-card) {
  background: transparent;
  color: var(--ll-primary-active);
  text-decoration: none;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui a:not(.lernlab-next):not(.lernlab-resource-card):hover {
  background: transparent;
  color: var(--ll-primary-active);
  box-shadow: none;
  text-decoration: none;
  transform: none;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui .lernlab-section-title {
  margin: 40px 0 16px;
  color: var(--ll-navy);
  font: 700 24px/32px var(--ll-font-heading);
  letter-spacing: -.02em;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-lead { max-width: 68ch; margin-bottom: 24px !important; color: var(--ll-body); font-size: 19px; line-height: 30px; }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-note, .lernlab-score, .lernlab-example, .lernlab-challenge, .lernlab-meta) {
  max-width: 72ch;
  margin: 20px 0 !important;
  padding: 18px 20px 18px 54px;
  border: 0;
  border-radius: var(--ll-radius-card);
  background: var(--ll-info-bg);
  background-image: url("/local/code_to_course/pix/lucide/book-open.svg");
  background-position: 18px 20px;
  background-repeat: no-repeat;
  background-size: 22px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-score { background-color: var(--ll-success-bg); background-image: url("/local/code_to_course/pix/lucide/award.svg"); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-example { background-color: var(--ll-project-bg); background-image: url("/local/code_to_course/pix/lucide/blocks.svg"); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-challenge { background-color: var(--ll-warning-bg); background-image: url("/local/code_to_course/pix/lucide/route.svg"); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-meta {
  display: inline-block;
  width: auto;
  padding: 8px 12px 8px 40px;
  background-color: var(--ll-subtle);
  background-image: url("/local/code_to_course/pix/lucide/clock.svg");
  background-position: 12px center;
  background-size: 18px;
  color: var(--ll-secondary);
  font-size: 15px;
  line-height: 22px;
}
body:is(.course-6, .lernlab-managed-course) .activity-header .lernlab-meta.ll-title-metadata {
  display: inline-block;
  width: auto;
  max-width: 72ch;
  margin: 8px 0 12px !important;
  padding: 8px 12px 8px 40px;
  border: 0;
  border-radius: var(--ll-radius-input);
  background: var(--ll-subtle) url("/local/code_to_course/pix/lucide/clock.svg") 12px center / 18px no-repeat;
  color: var(--ll-secondary);
  font-size: 15px;
  line-height: 22px;
}

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr));
  gap: 16px;
  margin: 16px 0 24px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card { min-width: 0; padding: 24px; border: 1px solid var(--ll-border); border-radius: var(--ll-radius-card); background: var(--ll-surface); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card h3 { margin: 0 0 8px; color: var(--ll-navy); font: 700 19px/27px var(--ll-font-heading); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card p { margin: 0; color: var(--ll-body); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card-grid--rubric {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 4px 20px;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-card);
  background: var(--ll-subtle);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card-grid--rubric .lernlab-card {
  border: 0;
  border-bottom: 1px solid var(--ll-border);
  border-radius: 0;
  background: transparent;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card-grid--rubric .lernlab-card:last-child { border-bottom: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row {
  --ll-score: 0%;
  display: grid;
  grid-template-columns: minmax(5.5rem, auto) minmax(8rem, 12rem) minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  padding: 16px 0;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row--1 { --ll-score: 50%; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row--2 { --ll-score: 100%; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row::before {
  content: "";
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--ll-primary) 0 var(--ll-score), #bfdbfe var(--ll-score) 100%);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row h3 { grid-column: 1; grid-row: 1; margin: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row p { grid-column: 3; grid-row: 1; }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid {
  display: grid;
  gap: 0;
  margin: 16px 0 24px;
  overflow: hidden;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-card);
  background: var(--ll-surface);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--ll-border);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid > div:last-child { border-bottom: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid > div:nth-child(even) { background: var(--ll-subtle); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid dt { min-width: 0; font-weight: 600; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid dd { margin: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-value {
  justify-self: end;
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--ll-info-bg);
  color: var(--ll-info);
  font-size: 15px;
  font-weight: 600;
  line-height: 22px;
  text-align: right;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-value--strong { background: var(--ll-navy); color: #fff; }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-steps, .lernlab-agenda) { margin: 16px 0 24px; padding: 0; list-style: none; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps { counter-reset: ll-step; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps li {
  position: relative;
  min-height: 52px;
  margin: 0 0 12px;
  padding: 12px 16px 12px 64px;
  border: 0;
  border-bottom: 1px solid var(--ll-border);
  border-radius: 0;
  background: transparent;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps li::before {
  counter-increment: ll-step;
  content: counter(ll-step);
  position: absolute;
  top: 10px;
  left: 16px;
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: var(--ll-radius-input);
  background: var(--ll-info-bg);
  color: var(--ll-navy);
  font-size: 14px;
  font-weight: 700;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps li span { display: block; min-width: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-list { max-width: 72ch; margin: 12px 0 20px; padding-left: 24px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-list li { margin: 8px 0; padding-left: 4px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-list li::marker { color: var(--ll-primary); }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda { display: grid; gap: 12px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda li {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin: 0;
  padding: 16px;
  border: 0;
  border-bottom: 1px solid var(--ll-border);
  border-radius: 0;
  background: transparent;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda-marker {
  display: grid;
  min-width: 44px;
  min-height: 44px;
  padding: 4px;
  place-items: center;
  border-radius: var(--ll-radius-input);
  background: var(--ll-navy);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda a { display: inline-block; font-weight: 600; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda-meta { display: block; margin-top: 4px; color: var(--ll-secondary); font-size: 15px; line-height: 22px; }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-terms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0 24px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-terms > div { padding: 20px; border: 0; border-radius: var(--ll-radius-card); background: var(--ll-info-bg); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-terms dt { margin: 0 0 4px; color: var(--ll-info); font-weight: 700; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-terms dd { margin: 0; color: var(--ll-body); }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure { max-width: 100%; margin: 20px 0 24px; padding: 0; border: 0; border-radius: 0; background: transparent; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure > a { display: block; position: relative; text-align: center; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 38rem;
  margin-inline: auto;
  border: 0;
  border-radius: var(--ll-radius-input);
  background: var(--ll-surface);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure figcaption { margin-top: 12px; color: var(--ll-secondary); font-size: 15px; line-height: 22px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.max-wave { max-width: 50rem; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 16px 0 24px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-comparison .lernlab-figure { height: 100%; margin: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-comparison img { width: 100%; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::before,
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::after {
  position: absolute;
  z-index: 1;
  padding: 3px 7px;
  border: 2px solid var(--ll-navy);
  border-radius: 6px;
  background: rgba(255, 255, 255, .96);
  color: var(--ll-navy);
  font-size: 13px;
  font-weight: 600;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::before { content: "1 · Blöcke"; left: 5%; top: 20%; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::after { content: "2 · Skriptbereich"; left: 28%; top: 38%; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.file-menu-detail img { border: 1px solid var(--ll-border); }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-resource-grid, .lernlab-block-grid) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 16px;
  margin: 16px 0 24px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 144px;
  padding: 24px 120px 24px 24px;
  border: 0;
  border-radius: var(--ll-radius-card);
  background-color: var(--ll-info-bg);
  background-position: right 22px center, right center;
  background-repeat: no-repeat;
  background-size: 68px, auto 100%;
  color: var(--ll-navy) !important;
  text-decoration: none !important;
  transition: none;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card--scratch {
  background-color: var(--ll-scratch-bg);
  background-image: url("/local/code_to_course/pix/lucide/blocks.svg"), url("/local/code_to_course/pix/illustrations/scratch-soft-v1.1.svg");
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card--python {
  background-color: var(--ll-python-bg);
  background-image: url("/local/code_to_course/pix/lucide/monitor.svg"), url("/local/code_to_course/pix/illustrations/landscape-soft-v1.1.svg");
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card:hover { box-shadow: none; transform: none; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card:hover .lernlab-resource-action { background-color: var(--ll-primary-hover); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card:active .lernlab-resource-action { background-color: var(--ll-primary-active); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card strong { font: 700 19px/27px var(--ll-font-heading); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card > span:not(.lernlab-resource-action) { color: var(--ll-secondary); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-action {
  display: inline-flex;
  width: fit-content;
  min-height: 44px;
  align-self: end;
  align-items: center;
  margin-top: 16px;
  padding: 8px 42px 8px 16px;
  border-radius: var(--ll-radius-button);
  background: var(--ll-primary) url("/local/code_to_course/pix/lucide/external-link.svg") right 14px center / 18px no-repeat;
  color: #ffffff;
  font-weight: 600;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-action > [aria-hidden="true"] { display: none; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card {
  display: grid;
  grid-template-columns: minmax(9rem, 42%) minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-card);
  background: var(--ll-surface);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-image { display: grid; min-height: 104px; place-items: center; padding: 12px; border-radius: var(--ll-radius-input); background: var(--ll-subtle); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-image img { width: auto; max-width: 100%; height: auto; max-height: 9rem; border: 0; object-fit: contain; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card--event .lernlab-block-image { height: auto; min-height: 104px; overflow: visible; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card--event .lernlab-block-image img { width: auto; max-width: 100%; transform: none; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card h2 { margin: 0 0 4px; font-size: 19px; line-height: 27px; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card p { margin: 0; color: var(--ll-secondary); font-size: 15px; line-height: 22px; }

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-action-row { display: inline-block; margin: 4px 8px 12px 0 !important; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 8px 42px 8px 16px;
  border: 1px solid var(--ll-primary);
  border-radius: var(--ll-radius-button);
  background: var(--ll-primary) url("/local/code_to_course/pix/lucide/chevron-right-white.svg") right 14px center / 18px no-repeat;
  color: #ffffff;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  text-decoration: none !important;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui a.lernlab-next { color: #ffffff; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next:hover { border-color: var(--ll-primary-hover); background-color: var(--ll-primary-hover); color: #ffffff; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next:active { border-color: var(--ll-primary-active); background-color: var(--ll-primary-active); color: #ffffff; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next--primary { border-color: var(--ll-primary); background-color: var(--ll-primary); color: #fff !important; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next--primary:hover { border-color: var(--ll-primary-hover); background-color: var(--ll-primary-hover); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next[target="_blank"] {
  background-image: url("/local/code_to_course/pix/lucide/external-link.svg");
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next > [aria-hidden="true"] { display: none; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-next, .lernlab-resource-card):focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}

:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check { min-width: 0; margin: 20px 0 24px; padding: 0; border: 0; border-radius: 0; background: transparent; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check legend { width: auto; max-width: 100%; margin: 0 0 10px; padding: 0; color: var(--ll-navy); font: 700 17px/27px var(--ll-font-heading); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice {
  display: grid;
  grid-template-rows: auto auto;
  min-width: 0;
  min-height: 88px;
  margin: 0;
  padding: 16px;
  border: 2px solid var(--ll-border);
  border-radius: var(--ll-radius-card);
  background: var(--ll-surface);
  cursor: pointer;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-answer { display: flex; min-height: 52px; align-items: center; gap: 8px; font-weight: 600; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice input { flex: 0 0 auto; width: 20px; height: 20px; margin: 0; accent-color: var(--ll-primary); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-feedback {
  visibility: hidden;
  align-self: end;
  min-height: 0;
  max-height: 0;
  margin: 0;
  padding: 0;
  border-radius: var(--ll-radius-input);
  font-size: 15px;
  font-weight: 600;
  line-height: 20px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(input:checked) .lernlab-choice-feedback { visibility: visible; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(input:checked) .lernlab-choice-feedback {
  max-height: 12rem;
  margin-top: 8px;
  padding: 8px 10px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(input:checked) { border-color: var(--ll-primary); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(.correct):has(input:checked) { border-color: var(--ll-success); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(.incorrect):has(input:checked) { border-color: var(--ll-error); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-feedback.correct { color: var(--ll-success); background: var(--ll-success-bg); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-feedback.incorrect { color: var(--ll-error); background: var(--ll-error-bg); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(input:focus-visible) {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice:has(input:focus:not(:focus-visible)) { outline: 0; }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check.ll-check-enhanced .lernlab-choice .lernlab-choice-feedback {
  visibility: hidden;
  max-height: 0;
  margin: 0;
  padding: 0;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check-feedback {
  width: fit-content;
  max-width: 100%;
  min-height: 0;
  margin-top: 10px;
  padding: 8px 12px;
  border-radius: var(--ll-radius-input);
  font-size: 15px;
  font-weight: 600;
  line-height: 20px;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check-feedback:empty {
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
}
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check-feedback.correct { color: var(--ll-success); background: var(--ll-success-bg); }
:is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-check-feedback.incorrect { color: var(--ll-error); background: var(--ll-error-bg); }
body:is(.course-6, .lernlab-managed-course).cmid-12 .lernlab-choice-grid--2 .lernlab-choice {
  padding-left: 64px;
  background-position: 18px 22px;
  background-repeat: no-repeat;
  background-size: 32px;
}
body:is(.course-6, .lernlab-managed-course).cmid-12 .lernlab-choice-grid--2 .lernlab-choice:first-child { background-image: url("/local/code_to_course/pix/lucide/blocks.svg"); }
body:is(.course-6, .lernlab-managed-course).cmid-12 .lernlab-choice-grid--2 .lernlab-choice:last-child { background-image: url("/local/code_to_course/pix/lucide/monitor.svg"); }

/* Native Moodle activities, still restricted to Course 6. */
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form .fitem { margin-bottom: 16px; }
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input[type="radio"]) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  gap: 8px;
  margin: 4px 4px 4px 0;
  padding: 8px 12px;
  border: 2px solid var(--ll-border);
  border-radius: var(--ll-radius-button);
  background: var(--ll-surface);
}
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input[type="radio"][value="1"]) { color: var(--ll-error); background: var(--ll-error-bg); }
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input[type="radio"][value="2"]) { color: var(--ll-warning); background: var(--ll-warning-bg); }
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input[type="radio"][value="3"]) { color: var(--ll-success); background: var(--ll-success-bg); }
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input:focus-visible) {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px var(--ll-primary-active);
}
body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input:focus:not(:focus-visible)) { outline: 0; }
body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que { border: 1px solid var(--ll-border); border-radius: var(--ll-radius-section); background: var(--ll-surface); }
body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que .info { border: 0; border-radius: var(--ll-radius-card) 0 0 var(--ll-radius-card); background: var(--ll-subtle); }
body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que .formulation { min-width: 0; border: 0; border-radius: 0 var(--ll-radius-card) var(--ll-radius-card) 0; background: var(--ll-surface); }
body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que.correct .outcome { color: var(--ll-success); background: var(--ll-success-bg); }
body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que.incorrect .outcome { color: var(--ll-error); background: var(--ll-error-bg); }
body:is(.course-6, .lernlab-managed-course).path-mod-assign :where(.submissionstatustable, .feedbacktable, .gradingtable) {
  max-width: 100%;
  border: 1px solid var(--ll-border);
  border-radius: var(--ll-radius-card);
  background: var(--ll-surface);
}
body:is(.course-6, .lernlab-managed-course).path-mod-assign .table-responsive { max-width: 100%; overflow-x: auto; }

/* Native completion remains Moodle-owned; only its presentation is reduced. */
body:is(.course-6, .lernlab-managed-course) :where([data-region="completionrequirements"], .automatic-completion-conditions).ll-completion-panel {
  width: 100%;
  max-width: 100%;
  margin: 12px 0 20px;
  padding: 8px 0 8px 36px;
  border: 0;
  border-radius: 0;
  background: transparent url("/local/code_to_course/pix/lucide/list-checks.svg") 0 10px / 20px no-repeat;
  color: var(--ll-body);
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course) .ll-completion-panel :where(ul, ol) { margin: 0; padding-left: 18px; }
body:is(.course-6, .lernlab-managed-course) .ll-completion-panel :where(li, .badge) { color: inherit; }
body:is(.course-6, .lernlab-managed-course) .ll-completion-panel .badge { background: transparent; }
body:is(.course-6, .lernlab-managed-course) .ll-completion-panel:has(.automatic-completion-is-complete):not(:has(.automatic-completion-is-incomplete, .automatic-completion-is-failed)) {
  background-color: transparent;
  background-image: url("/local/code_to_course/pix/lucide/check.svg");
}
body:is(.course-6, .lernlab-managed-course) .ll-completion-panel:has(.automatic-completion-is-failed) {
  background-color: transparent;
}

/* Structural Moodle wrappers stay open and white; inner learning components keep their own states. */
body:is(.course-6, .lernlab-managed-course) :where(.activity-wrapper, .activity-header, .activity-information, .activity-details, .activity-description, #intro.generalbox, .completion-info) {
  border: 0;
  background: transparent;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course).path-mod .activity-details:not(:empty) {
  width: 100%;
  padding-inline: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Forum intro and empty state: quiet inline information, never a full alarm band. */
body:is(.course-6, .lernlab-managed-course).path-mod-forum #intro.generalbox { max-width: 72ch; padding: 0; }
body:is(.course-6, .lernlab-managed-course).path-mod-forum :where([id^="discussion-list-"] .forumnodiscuss.alert.alert-info, [data-region="empty-message"]) {
  width: fit-content;
  max-width: 72ch;
  margin: 16px 0;
  padding: 12px 16px 12px 48px;
  border: 0;
  border-radius: var(--ll-radius-card);
  background: var(--ll-info-bg) url("/local/code_to_course/pix/lucide/message-square.svg") 16px center / 20px no-repeat;
  color: var(--ll-body);
}

/* Page decorations are presentation-only and fade into the white page. */
body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui {
  position: relative;
  z-index: 0;
  isolation: isolate;
  min-height: 0;
  padding: 24px 0 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -20px;
  right: 0;
  width: min(58vw, 720px);
  height: 220px;
  background: url("/local/code_to_course/pix/illustrations/landscape-soft-v1.1.svg") right top / contain no-repeat;
  pointer-events: none;
}
body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui > * { position: relative; z-index: 1; }
body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui > :where(p, h2, h3, ol, ul, dl) { max-width: min(62%, 42rem); }
body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-card-grid--overview { width: 100%; margin-top: 112px; }
body:is(.course-6, .lernlab-managed-course).cmid-14 :where(.activity-header, .activity-information, .activity-description, #intro.generalbox) {
  min-height: 0;
  padding-right: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
body:is(.course-6, .lernlab-managed-course).cmid-14 .activity-header::after { content: none; }
body:is(.course-6, .lernlab-managed-course).cmid-14 .activity-header > * { max-width: 100%; }
body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header { position: relative; min-height: 120px; }
body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  width: min(48vw, 540px);
  height: 160px;
  background: url("/local/code_to_course/pix/illustrations/scratch-soft-v1.1.svg") right top / contain no-repeat;
  pointer-events: none;
}
body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header > * { position: relative; z-index: 1; max-width: min(68%, 46rem); }

/* Generated review shell. */
.lernlab-preview {
  max-width: 76rem;
  margin: auto;
  padding: 32px;
  background: var(--ll-bg);
  color: var(--ll-body);
  font: 400 17px/27px var(--ll-font-body);
}
.lernlab-preview,
.lernlab-preview * { box-sizing: border-box; }
.lernlab-preview > h1 { margin-bottom: 24px; color: var(--ll-navy); font: 700 40px/48px var(--ll-font-heading); }
.lernlab-preview textarea { display: block; width: 100%; min-height: 96px; }
.lernlab-preview fieldset { min-width: 0; margin: 16px 0; }

@media (max-width: 900px) {
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-grid { grid-template-columns: 1fr; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-grid { grid-template-columns: 1fr; }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui > :where(p, h2, h3, ol, ul, dl) { max-width: min(72%, 42rem); }
}

@media (max-width: 620px) {
  body:is(.course-6, .lernlab-managed-course) { font-size: 16px; line-height: 25px; }
  .lernlab-preview > h1 { font-size: 28px; line-height: 36px; overflow-wrap: anywhere; }
  body:is(.course-6, .lernlab-managed-course) :where(h1, .h1) { font-size: 28px; line-height: 36px; }
  body:is(.course-6, .lernlab-managed-course) :where(h2, .h2) { font-size: 24px; line-height: 32px; }
  body:is(.course-6, .lernlab-managed-course) :where(h3, .h3) { font-size: 20px; line-height: 28px; }
  body:is(.course-6, .lernlab-managed-course) :where(h4, .h4) { font-size: 18px; line-height: 26px; }
  body:is(.course-6, .lernlab-managed-course) :where(.btn-primary, input[type="submit"].btn-primary) { min-height: 48px; }
  body:is(.course-6, .lernlab-managed-course) #page.drawers .main-inner { width: calc(100% - 32px); border-radius: 0; box-shadow: none; }
  body:is(.course-6, .lernlab-managed-course) .course-section { margin-block: 12px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui { font-size: 16px; line-height: 25px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-ui .lernlab-section-title { margin-top: 32px; font-size: 20px; line-height: 28px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-lead { font-size: 17px; line-height: 27px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :is(.lernlab-card-grid, .lernlab-resource-grid, .lernlab-comparison, .lernlab-terms, .lernlab-choice-grid, .lernlab-choice-grid--4) { grid-template-columns: 1fr; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-grid > div { grid-template-columns: 1fr; gap: 4px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-data-value { justify-self: start; text-align: left; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-agenda li { grid-template-columns: 44px minmax(0, 1fr); padding: 12px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps li { padding: 12px 12px 12px 56px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-steps li::before { left: 12px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-card { grid-template-columns: 1fr; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-block-image { min-height: 64px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-choice { min-height: 88px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-action-row { display: block; margin-right: 0 !important; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-next { width: 100%; min-height: 48px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure { padding: 0; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::before,
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-figure.workspace > a::after { border-width: 1px; font-size: 12px; }
  body:is(.course-6, .lernlab-managed-course).path-mod-feedback.cmid-24 .feedback_form label:has(input[type="radio"]) { display: flex; width: 100%; min-height: 48px; margin-right: 0; }
  body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que.match .answer :where(table, tbody, tr, td) { display: block; width: 100%; }
  body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que.match .answer select { width: 100%; min-width: 0; max-width: 100%; white-space: normal; }
  body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que { border-radius: var(--ll-radius-card); }
  body:is(.course-6, .lernlab-managed-course).path-mod-quiz .que :where(.info, .formulation) { border-radius: var(--ll-radius-input); }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui {
    min-height: 0;
    padding: 136px 0 0;
    background: transparent;
  }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui > :where(p, h2, h3, ol, ul, dl) { max-width: 100%; }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui::before { top: 0; width: 100%; height: 144px; background-position: right top; }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-card-grid--overview { margin-top: 16px; }
  body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header { min-height: 0; padding-top: 116px; }
  body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header::after { width: 100%; height: 128px; }
  body:is(.course-6, .lernlab-managed-course).cmid-21 .activity-header > * { max-width: 100%; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card-grid--rubric { padding-inline: 16px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row { grid-template-columns: 1fr; gap: 8px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row h3 { grid-column: 1; grid-row: 1; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row::before { grid-column: 1; grid-row: 2; max-width: 18rem; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-rubric-row p { grid-column: 1; grid-row: 3; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card { padding: 20px 96px 20px 20px; background-position: right 16px center, right center; background-size: 56px, auto 100%; }
}

@media (max-width: 360px) {
  .lernlab-preview { padding: 16px; }
  .lernlab-preview > h1 { font-size: 28px; line-height: 36px; overflow-wrap: anywhere; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-card { padding: 16px; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-note, .lernlab-score, .lernlab-example, .lernlab-challenge) { padding: 16px 16px 16px 48px; background-position: 16px 18px; }
  body:is(.course-6, .lernlab-managed-course).cmid-17 .lernlab-ui { padding-inline: 0; }
}

@supports not selector(:focus-visible) {
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(a, button, input, select, textarea, [tabindex]):focus {
    outline: 3px solid #ffffff;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px var(--ll-primary-active);
  }
}

body:is(.course-6, .lernlab-managed-course) :target { scroll-margin-top: 84px; }

@media (prefers-reduced-motion: reduce) {
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) .lernlab-resource-card { transition: none; }
}
@media (forced-colors: active) {
  body:is(.course-6, .lernlab-managed-course) #theme_boost-drawers-courseindex .drawercontent { scrollbar-color: auto; }
  :is(body:is(.course-6, .lernlab-managed-course), .lernlab-preview) :where(.lernlab-card, .lernlab-note, .lernlab-score, .lernlab-example, .lernlab-challenge, .lernlab-choice, .lernlab-next) { border: 1px solid CanvasText; }
}


/* Password unit revision 2: shared 960 px outer content grid; Course 6 remains frozen. */
body.lernlab-passwords-unit .lernlab-ui > :is(p, ol, ul, dl, details):not(.lernlab-meta) {
  max-width: 100%;
}
body.lernlab-passwords-unit .ll-index-group-title {
  list-style: none;
  margin: 20px 8px 8px;
  padding: 12px 4px 0;
  border-top: 1px solid rgba(255, 255, 255, .3);
  color: #FFFFFF;
  font: 600 16px/24px var(--ll-font-body);
}
body.lernlab-passwords-unit .ll-content-group-title {
  list-style: none;
  margin: 32px 0 16px;
  padding-top: 16px;
  border-top: 1px solid var(--ll-border);
  color: var(--ll-navy);
  font: 600 19px/27px var(--ll-font-heading);
}

body.lernlab-passwords-unit .lernlab-steps[start="3"] { counter-reset: ll-step 2; }
