:is(.u1-sector-review,.art-explorer) :is(.planet-popover,.planet-preview,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview)) {
  --ecg-font-pixel: var(--sector-font-readable);
  --review-edge: #b68af5;
  --review-ink: #f0eaff;
  color: var(--review-ink);
  background: linear-gradient(120deg, #151d38, #0c1025 75%);
  border: 0;
  border-radius: 2px;
  box-shadow: 3px 0 var(--review-edge), -3px 0 var(--review-edge),
    0 3px var(--review-edge), 0 -3px var(--review-edge),
    inset 0 0 0 2px #514371, 5px 6px #080b19;
  padding: 20px;
  letter-spacing: 0;
}

:is(.u1-sector-review,.art-explorer) :is(.planet-popover,.planet-preview).state-locked { --review-edge: #85849b; }
:is(.u1-sector-review,.art-explorer) .map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) { width: min(420px, calc(100vw - 32px)); }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-header,.preview-header) { border-bottom: 0; }
:is(.u1-sector-review,.art-explorer) .planet-popover-header {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 6px 16px;
  align-items: start;
}
:is(.u1-sector-review,.art-explorer) .planet-popover-header > :not(.sector-preview-planet) { grid-column: 2; margin: 0; }
:is(.u1-sector-review,.art-explorer) .sector-preview-planet {
  grid-column: 1;
  grid-row: 1 / span 3;
  width: 76px;
  height: 88px;
  object-fit: contain;
  image-rendering: pixelated;
  background: #161d36;
  box-shadow: 2px 0 #555e99, -2px 0 #555e99, 0 2px #555e99, 0 -2px #555e99;
}
:is(.u1-sector-review,.art-explorer) .state-locked .sector-preview-planet { filter: grayscale(1) brightness(.65); }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover,.planet-preview) :is(.preview-activity strong,.preview-unit-list strong) { font-size: 14px; }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-header,.preview-header,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) header) small {
  color: var(--ecg-ui-silver, #c7a5ff);
  font-size: 13px;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-header strong,.preview-header h2,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) header strong) {
  color: var(--ecg-ui-text, #f0eaff);
  font-size: 17px;
  line-height: 1.5;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
:is(.u1-sector-review,.art-explorer) .map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) header {
  position: relative;
  min-height: 96px;
  padding-left: 108px;
  padding-right: 36px;
}
:is(.u1-sector-review,.art-explorer) .map-popover:has([data-action="enter-preview-unit"]) header::before,
:is(.u1-sector-review,.art-explorer) .sector-preview-thumbnail {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 92px;
  height: 92px;
  background: #161d36 var(--course-preview-background, none) center / contain no-repeat;
  image-rendering: pixelated;
  box-shadow: 2px 0 #555e99, -2px 0 #555e99, 0 2px #555e99, 0 -2px #555e99;
}
:is(.u1-sector-review,.art-explorer) .sector-preview-thumbnail {
  object-fit: contain;
  padding: 6px;
  box-sizing: border-box;
  background: #161d36;
}
:is(.u1-sector-review,.art-explorer) .map-popover.sector-technical-preview header::before { display: none; }
:is(.u1-sector-review,.art-explorer) .sector-art-placeholder {
  display: grid;
  place-items: center;
  text-align: center;
  color: #b9c7cc;
  background: #202930;
  border: 1px dashed #72818b;
  box-shadow: none;
  font: 13px/1.5 var(--ecg-font-pixel);
}
:is(.u1-sector-review,.art-explorer) .sector-art-status {
  position: absolute;
  z-index: 25;
  bottom: 12px;
  right: 12px;
  max-width: calc(100% - 24px);
  padding: 8px 12px;
  color: #cbd8dd;
  background: #172027f2;
  border-left: 2px solid #75c8d5;
  font: 13px/1.5 var(--sector-font-readable);
  pointer-events: none;
}
:is(.u1-sector-review,.art-explorer) [data-module-id="mod-preparacion-tecnica"] :is(.territory-marker,.activity-tile-rest) {
  --ecg-font-pixel: var(--sector-font-readable);
}
:is(.u1-sector-review,.art-explorer) .map-popover.sector-preview-locked { --review-edge: #85849b; }
:is(.u1-sector-review,.art-explorer) .sector-preview-locked .sector-preview-thumbnail { filter: saturate(.35) brightness(.8); }
:is(.u1-sector-review,.art-explorer) .sector-lesson-preview .map-preview-requirement { color: #c3c5e2; }
:is(.u1-sector-review,.art-explorer) .map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) .lesson-popover-meta { gap: 8px 16px; }
:is(.u1-sector-review,.art-explorer) .map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) .lesson-popover-meta span {
  padding: 0;
  border: 0;
  background: none;
  color: var(--ecg-ui-muted, #b9bdec);
  font-size: 14px;
  line-height: 1.5;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-progress,.preview-progress,.preview-unit,.preview-unit > header,.preview-unit-list > span,.preview-empty) {
  background: transparent;
  border: 0;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-progress,.preview-progress) { padding: 8px 0; border-block: 1px solid #404361; }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-progress,.preview-progress) progress::-webkit-progress-value { background: #b68af5; }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-progress,.preview-progress) progress::-moz-progress-bar { background: #b68af5; }
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-travel,.preview-travel,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) .lesson-preview-action):not(:disabled) {
  color: #130d27;
  background: #b18aef;
  box-shadow: inset 0 3px #eee2ff, inset 3px 0 #d3b9fc, inset -3px 0 #8c65c9, inset 0 -4px #7753b4;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-travel,.preview-travel,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) .lesson-preview-action) {
  min-height: 48px;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover-close,.preview-close,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview) .map-popover-close) {
  width: 36px;
  height: 36px;
  color: var(--ecg-ui-silver-bright, #e8d7ff);
  background: var(--ecg-ui-action-bg, #20213c);
  border: 1px solid var(--ecg-ui-border, #8575ad);
  box-shadow: none;
}
:is(.u1-sector-review,.art-explorer) :is(.planet-popover,.planet-preview,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview)) :is(button,a):focus-visible {
  outline: 2px solid var(--ecg-ui-focus, #efe5ff);
  outline-offset: 2px;
}


/* Shared controls and typography; geography is owned by each scene. */
:is(.u1-sector-review,.art-explorer){--sector-font-readable:"Segoe UI",Verdana,sans-serif;--ecg-font-pixel:var(--sector-font-readable)}
:is(.u1-sector-review .sector-journey-dock button,.art-explorer #altitude,.art-explorer #locations button,.art-explorer .region-point){font:14px/1.5 var(--sector-font-readable);min-height:48px;background:#3c2b56;border:1px solid #bb9be9;color:#f0eaff;letter-spacing:0}
.art-explorer #locations button[aria-pressed=true]{background:#b18aef;color:#130d27;box-shadow:inset 0 3px #eee2ff,inset 3px 0 #d3b9fc,inset -3px 0 #8c65c9,inset 0 -4px #7753b4}
.art-explorer .preview-heading strong{display:block;margin:6px 0}
.art-explorer .preview-heading{display:block}
.art-explorer .preview-description{font:15px/1.5 var(--sector-font-readable);color:#c3c5e2}
.art-explorer .pending{font:14px/1.5 var(--sector-font-readable);color:#c3c5e2;border-top:1px solid #404361;padding-top:14px}
@media(max-width:760px){
 :is(.u1-sector-review,.art-explorer) :is(.planet-preview,.map-popover:is(:has([data-action="enter-preview-unit"]),.sector-lesson-preview)){padding:18px 16px}
 :is(.u1-sector-review,.art-explorer) .map-popover.sector-lesson-preview header{padding-left:88px;padding-right:42px;min-height:96px}
 :is(.u1-sector-review,.art-explorer) .sector-preview-thumbnail{width:72px;height:84px}
 :is(.u1-sector-review,.art-explorer) .map-popover.sector-lesson-preview .map-popover-close{width:44px;height:44px}
}


/* Module III uses the same full-viewport scene shell as I/II. */
body.u1-sector-review:has(.view-art-module){overflow:hidden}
.u1-sector-review:has(.view-art-module)>.top{position:fixed;inset:0 0 auto;width:100%;max-width:none;height:56px;min-height:0;margin:0;padding:8px 16px;box-sizing:border-box;z-index:50;background:#080e17e8}
.u1-sector-review:has(.view-art-module) :is(.crumb,footer){display:none}
.u1-sector-review:has(.view-art-module) :is(.learning-page,.academy-map){padding:0;margin:0;max-width:none;width:100%}
.view-art-module{position:fixed;inset:0;background:#0c1019;z-index:20}
.course-art-frame{display:block;border:0;width:100%;height:100%;background:#0c1019}
.art-system-back{position:absolute;top:99px;left:16px;z-index:5;min-height:44px;padding:10px 16px;background:#080e17e8;color:#f0eaff;border:1px solid #546478;font:13px Segoe UI,sans-serif;cursor:pointer}
.view-art-module[data-close=true] .art-system-back{display:none}

body.art-explorer #altitude{background:#080e17e8;border:1px solid #546478;min-height:44px;font:13px Segoe UI,sans-serif;color:#f0eaff}

.u1-sector-review .review-complete-world{display:block;width:100%;min-height:44px;margin-top:10px;padding:8px 12px;font:14px/1.5 Segoe UI,sans-serif;color:#f0eaff;background:#20213c;border:1px solid #8575ad;cursor:pointer}.u1-sector-review .review-complete-world:disabled{opacity:.45;cursor:default}

/* One shared study dock and completion controls for every review world. */
:is(.u1-sector-review,.art-explorer) .sector-study-dock {
  position: absolute;
  z-index: 35;
  inset: auto 0 0;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) 160px;
  align-items: center;
  gap: 16px;
  padding: 12px 20px;
  border-top: 2px solid #8174a5;
  background: #121923f5;
  color: #f0eaff;
  font: 14px/1.5 var(--sector-font-readable);
  letter-spacing: 0;
}
:is(.u1-sector-review,.art-explorer) .sector-syllabus summary {
  padding: 12px 4px;
  min-height: 48px;
  box-sizing: border-box;
  cursor: pointer;
}
:is(.u1-sector-review,.art-explorer) .sector-syllabus ol {
  position: absolute;
  left: 12px;
  bottom: calc(100% + 8px);
  width: min(440px, calc(100vw - 24px));
  max-height: min(420px, calc(100dvh - 250px));
  box-sizing: border-box;
  margin: 0;
  padding: 8px;
  overflow-y: auto;
  list-style: none;
  border: 1px solid #8174a5;
  background: #121923;
  overscroll-behavior: contain;
}
:is(.u1-sector-review,.art-explorer) .sector-syllabus button {
  display: block;
  width: 100%;
  padding: 12px;
  min-height: 48px;
  border: 0;
  border-bottom: 1px solid #3e4655;
  color: inherit;
  background: transparent;
  text-align: left;
  font: inherit;
  cursor: pointer;
}
:is(.u1-sector-review,.art-explorer) .sector-syllabus button small { display: block; color: #bec4d5; font-size: 12px; }
:is(.u1-sector-review,.art-explorer) .sector-syllabus .is-completed :is(span,small) { color: #89dfb9; }
:is(.u1-sector-review,.art-explorer) .sector-syllabus [aria-current="step"] { border-left: 3px solid #bdefff; background: #243440; }
:is(.u1-sector-review,.art-explorer) .sector-study-current { min-width: 0; }
:is(.u1-sector-review,.art-explorer) .sector-study-current small { display: block; color: #bdefff; font-size: 12px; }
:is(.u1-sector-review,.art-explorer) .sector-study-current strong { display: block; font-size: 15px; line-height: 1.4; overflow-wrap: anywhere; }
:is(.u1-sector-review,.art-explorer) .sector-study-current progress { display: block; width: 100%; height: 6px; margin: 8px 0 4px; border: 0; background: #30394b; accent-color: #89dfb9; }
:is(.u1-sector-review,.art-explorer) .sector-study-current progress::-webkit-progress-bar { background: #30394b; }
:is(.u1-sector-review,.art-explorer) .sector-study-current progress::-webkit-progress-value { background: #89dfb9; }
:is(.u1-sector-review,.art-explorer) .sector-study-current progress::-moz-progress-bar { background: #89dfb9; }
:is(.u1-sector-review,.art-explorer) .sector-study-xp { display: block; color: #89dfb9; font-size: 13px; }
:is(.u1-sector-review,.art-explorer) .sector-study-continue {
  min-height: 48px;
  border: 1px solid #d3b9fc;
  background: #b18aef;
  color: #130d27;
  font: inherit;
  cursor: pointer;
}
:is(.u1-sector-review,.art-explorer) .sector-study-dock :is(button,summary):focus-visible { outline: 2px solid #bdefff; outline-offset: 2px; }
:is(.u1-sector-review,.art-explorer) .sector-syllabus button:hover { background: #243440; }
:is(.u1-sector-review,.art-explorer) .sector-study-status { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; color: #bac7c7; font-size: 12px; }
:is(.u1-sector-review,.art-explorer) .sector-study-status button { border: 0; padding: 8px; min-height: 36px; background: transparent; color: #bac7c7; font: inherit; text-decoration: underline; cursor: pointer; }
:is(.u1-sector-review,.art-explorer) .sector-study-actions { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 8px; flex-shrink: 0; margin-top: 12px; }
:is(.u1-sector-review,.art-explorer) .sector-study-actions small { grid-column: 1 / -1; color: #bac7c7; font: 12px/1.5 var(--ecg-font-pixel); }
:is(.u1-sector-review,.art-explorer) .sector-study-actions button { min-height: 48px; border: 1px solid #8174a5; padding: 8px; background: #202b36; color: #f0eaff; font: 14px/1.4 var(--ecg-font-pixel); cursor: pointer; }
:is(.u1-sector-review,.art-explorer) .sector-study-actions [data-study-action="seen"]:not(:disabled) { color: #112a20; background: #89dfb9; border-color: #b9f1d6; }
:is(.u1-sector-review,.art-explorer) :is(.sector-study-actions,.sector-study-status) button:disabled { opacity: .5; cursor: default; }
@media (max-width: 760px) {
  :is(.u1-sector-review,.art-explorer) .sector-study-dock { grid-template-columns: minmax(0, 1fr) 116px; gap: 8px 12px; padding: 8px 12px; font-size: 15px; }
  :is(.u1-sector-review,.art-explorer) .sector-study-current { grid-column: 1 / -1; grid-row: 2; min-height: 58px; }
  :is(.u1-sector-review,.art-explorer) .sector-syllabus button small { font-size: 13px; }
  :is(.u1-sector-review,.art-explorer) .sector-study-status { font-size: 13px; }
  :is(.u1-sector-review,.art-explorer) .sector-study-status button { min-height: 44px; }
  :is(.u1-sector-review,.art-explorer) .sector-study-actions small { font-size: 13px; }
}
body.art-explorer .sector-study-continue{background:#b18aef;color:#130d27;border:1px solid #d3b9fc}body.art-explorer .sector-study-actions [data-study-action="seen"]:not(:disabled){background:#89dfb9;color:#112a20;border-color:#b9f1d6}

.course-choice-dialog{max-width:min(440px,calc(100vw - 32px));padding:24px;border:3px solid #b68af5;background:#151d38;color:#f0eaff;font:15px/1.5 Segoe UI,sans-serif}.course-choice-dialog::backdrop{background:#080e17b8}
.course-choice-dialog button,.course-decision-options button,.course-route-summary{min-height:44px;padding:10px 14px;background:#20213c;border:1px solid #8575ad;color:#f0eaff;font:14px Segoe UI,sans-serif;cursor:pointer}.course-choice-dialog button{margin:4px}.course-decision-options button{display:block;width:100%;margin:8px 0}.course-decision-options button[aria-pressed=true]{background:#b18aef;color:#130d27}.course-decision-options button:disabled{opacity:.5;cursor:default}.course-route-summary{position:absolute;top:66px;right:16px;z-index:10;max-width:260px}.course-decision-options p{font:15px/1.5 Segoe UI,sans-serif}
@media(max-width:760px){.course-route-summary{top:104px;right:12px;max-width:180px;font-size:12px}}
