/* Exploration base: home and route map only. */
body[data-quest-view="base"],body[data-quest-view="map"]{background-color:#edf3ed;background-image:radial-gradient(ellipse at 90% 0%,#d4eee5 0,transparent 48%),linear-gradient(90deg,#255c4510 1px,transparent 1px),linear-gradient(#255c4510 1px,transparent 1px);background-size:auto,32px 32px,32px 32px}
.base-welcome{color:#476557;margin:6px 0 14px;font-size:14px}.base-heading{margin-bottom:14px}.base-heading h1{font-size:clamp(23px,2.6vw,32px)}
.base-console{gap:16px}.base-mission{border:2px solid #266b5c;border-radius:20px 20px 20px 4px;box-shadow:0 6px 0 #c4d9cb}.console-label{background:linear-gradient(100deg,#173e36,#286c5e);font-size:12px}.console-label:before{content:'';width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#d9f293;box-shadow:0 0 0 4px #d9f29322;align-self:center}.console-label span:first-of-type{margin-right:auto}.base-mission-body{position:relative;padding:20px 24px;background:linear-gradient(120deg,#fff 65%,#e9f5f0)}.base-mission-body h2{padding-right:45px}.base-mission-marker{position:absolute;right:20px;top:18px;font-size:42px;color:#408b78}.base-mission-body .primary{box-shadow:0 4px 0 #0b3f33;border-radius:10px}.base-mission-body .primary:active{transform:translateY(2px);box-shadow:0 2px 0 #0b3f33}
.base-guide-panel{border-radius:20px 4px 20px 20px;background:radial-gradient(circle at 20% 20%,#ffffff 0,#eef6df 35%,#dcecdf 100%);overflow:hidden}.base-guide-panel .explorer-guide img{width:90px;height:108px;filter:drop-shadow(0 6px 4px #29574625)}.base-record-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 8px}.base-record-counts>div{padding:10px 5px;border:1px solid #b3cdb7;border-radius:12px;background:#ffffffc9;text-align:center}.base-record-counts b{display:block;font-size:23px;color:#215e4b}.base-record-counts>div:nth-child(2) b{color:#346c8c}.base-record-counts>div:nth-child(3) b{color:#885e26}.base-record-counts span{display:block;font-size:11px;line-height:1.5}.base-count-note{display:block;font-size:11px;color:#536b5c;line-height:1.7}
.base-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;border:1px solid #a2b8a8;background:#f2f6f0;font-size:12px}.base-badge.clear{background:#e4f4d5;border-color:#7d9f53}.base-badge.help{background:#e6f1fa;border-color:#8ab5ca}.base-badge.later{background:#fff2d8;border-color:#cca75e}
.base-destinations{gap:12px;margin:22px 0}.base-destinations>a{border:1px solid #acc5b8;border-bottom:4px solid #80ad98;border-radius:14px;background:linear-gradient(130deg,#fff,#eaf4ec);transition:transform .15s}.base-destinations>a:nth-child(2){border-bottom-color:#82a9c1;background:linear-gradient(130deg,#fff,#eaf2f8)}.base-destinations>a:nth-child(3){border-bottom-color:#c8ad6f;background:linear-gradient(130deg,#fff,#faf2df)}.base-destinations .quest-unit-icon{width:44px;height:44px;flex:0 0 44px;border-radius:12px;padding:8px;background:#deeee2;box-sizing:content-box}.base-destinations>a:hover{transform:translateY(-2px)}
.base-route-overview{margin:20px 0}.base-route-overview h2{font-size:18px;margin:0}.base-route-overview>.row>small{font-size:12px;color:#536b5c}
.base-sectors{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;margin:14px 0 20px}.base-sector{position:relative;display:flex;align-items:center;gap:10px;min-width:0;padding:14px 10px;border-radius:14px;border:1px solid #b4cabc;background:#f9fcf7;color:#234d40;text-decoration:none!important;box-shadow:0 3px 0 #d4e1d6}.base-sector:after{content:'›';position:absolute;right:-10px;top:35%;color:#436d59;font-size:22px;z-index:1}.base-sector:last-child:after{display:none}.sector-node{display:grid;place-items:center;flex:0 0 36px;height:36px;border:2px solid #a1b9a8;border-radius:12px;background:#e5eee7;font-weight:800;font-size:17px;transform:rotate(-5deg)}.base-sector>span:last-child{flex:1;min-width:0}.base-sector strong{display:block;font-size:14px;line-height:1.6}.base-sector small{display:block;font-size:10px;line-height:1.7}.base-sector.is-here{background:#e5f5ec;border:2px solid #28745e;box-shadow:0 3px 0 #a4cdb8}.is-here .sector-node{background:#215f4e;border-color:#215f4e;color:#e4f2b5;box-shadow:0 0 0 4px #c7e5d7}.base-sector.is-done .sector-node{color:#725814;background:#f7eab3}.sector-meter,.chapter-meter{display:block;height:5px;border-radius:5px;background:#d5e2d8;margin:7px 0;overflow:hidden}.sector-meter i,.chapter-meter i{display:block;height:100%;background:#549579;border-radius:5px}.base-legend{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;color:#3c5a49}
body[data-quest-view="map"] .map-phase{border-radius:18px;background:#ffffffd9;border:1px solid #b7ccbd;padding:18px;box-shadow:0 3px 0 #dbe5dc}body[data-quest-view="map"] .map-phase>summary{color:#214c3c;font-size:18px}.path-list{border-left:3px solid #a3c0ae}.path-item.route-here{border:2px solid #28745e;background:#eef9f2;box-shadow:0 3px 0 #c4dfcf!important}.path-list .route-here:before{background:#1f7055;box-shadow:0 0 0 4px #c2e3cb}.base-here-label{display:block;font-size:11px;font-weight:700;color:#176047;margin-bottom:3px}.chapter-records{display:block;font-size:11px;color:#536b5c;margin-top:7px}.chapter-meter{max-width:240px;margin-bottom:0}.path-item>div{flex:1}.path-item .number{border-radius:50%;border:2px solid #b7d2bc}.base-current .path-item .status{white-space:normal}.base-sector:focus-visible,.base-destinations a:focus-visible{outline:3px solid #17674d;outline-offset:4px}
@media(max-width:850px){.base-guide-panel{display:block}.base-guide-panel .explorer-guide img{width:65px;height:76px}.base-record-counts{margin-top:10px}.base-sectors{grid-template-columns:repeat(2,minmax(0,1fr))}.base-sector:after{display:none}.base-destinations .quest-unit-icon{width:28px;height:28px;flex-basis:28px;padding:7px}}
@media(max-width:600px){.base-sectors{gap:9px}.base-sector{padding:12px 8px;gap:8px}.sector-node{flex-basis:28px;height:28px;font-size:14px}.base-sector strong{font-size:12px}.base-destinations>a{padding:12px}.base-destinations a>div{display:block}.chapter-records{font-size:10px}.path-item .status{white-space:normal;max-width:75px}.base-mission-body{padding:18px}.base-mission-body h2{font-size:21px}.console-label{flex-wrap:wrap;font-size:10px}.base-heading .button{width:auto}.base-route-overview>.row{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.base-destinations>a{transition:none}.base-destinations>a:hover,.base-mission-body .primary:active{transform:none}}

/* Lesson-specific sample explanations; tables scroll within narrow screens. */
.variable-guide{margin:12px 0;padding:12px;border:1px solid #c9d9d1;border-radius:12px;background:#f6faf7;color:#233d35}
.variable-guide summary{font-weight:700;cursor:pointer}
.variable-guide p{line-height:1.65}
.variable-table-scroll{overflow-x:auto;max-width:100%}
.variable-guide table{border-collapse:collapse;width:100%;min-width:0;table-layout:fixed;font-size:.9rem}
.variable-guide th,.variable-guide td{white-space:normal;padding:9px;text-align:left;vertical-align:top;border:1px solid #c9d9d1;overflow-wrap:anywhere}
.variable-guide th{background:#e8f2ec}.variable-guide code{white-space:pre-wrap}

/* Shared input/output labels and post-answer choices. */
.console-part{display:block;margin:0 0 .65rem;white-space:normal}.console-label{display:block;font:700 .78rem/1.5 sans-serif;color:#185548;border-left:3px solid #23977a;padding-left:.5rem}.console-input .console-label{color:#76551b;border-color:#be8d29}.console-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;padding:.25rem .6rem;background:#f3f7f4;color:#173e34}.support-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin:.75rem 0}#support-resume{margin-top:1rem;border-top:1px solid #b9d3c6;padding-top:1rem}.support-retry .answers button{white-space:pre-wrap}

/* The base offers one next action; the map owns the unit list. */
.base-guide-note{font-size:13px;line-height:1.8;margin:18px 0 0;padding-top:14px;border-top:1px solid #b9cdbb;color:#365747}
.base-map-link{margin:22px 0 26px}.base-map-link>a{display:inline-flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid #adc9b8;border-radius:12px;background:#f7fbf6;font-weight:700;min-height:44px;text-decoration:none}
.base-map-link .quest-unit-icon{width:32px;height:32px;flex:0 0 32px}.base-map-link small{display:block;font-size:11px;font-weight:400;color:#4d6d5c}.base-map-link>a:hover{background:#e9f5eb}.base-map-link>a:focus-visible{outline:3px solid #17674d;outline-offset:3px}
.base-other-links{display:flex;flex-wrap:wrap;gap:12px 24px}.base-other-links a{display:inline-flex;align-items:center;min-height:44px}
.map-home-link{display:block;width:fit-content;min-height:44px;padding:10px 0;margin-bottom:8px}
.milestone-options,.unit-extra{margin:18px 0;padding:14px 16px;border:1px solid #adc9b8;border-radius:12px;background:#f5faf1}.milestone-options>summary,.unit-extra>summary{cursor:pointer;font-weight:700;min-height:44px;padding:10px 0}.milestone-options>p{margin:8px 0 16px}.milestone-options .mini-card{box-shadow:none;margin:12px 0}
body[data-quest-view="base"] .base-records{margin:10px 0;padding:8px 0}body[data-quest-view="base"] .base-guide-panel{display:block}
body[data-quest-view="base"] .base-mission>.console-label{display:flex;color:#f4ffe6;border-left:0;padding:11px 20px}body[data-quest-view="base"] .console-label span:first-of-type{color:#f4ffe6}
@media(max-width:850px){.base-guide-note{margin-top:10px;padding-top:10px}.base-map-link{margin:16px 0}.base-mission-body .primary{min-width:180px}}

/* v2.47.0: output labels must not inherit the home console banner. */
.console-part > .console-label{background:#e7f3ee;color:#185548;padding:.25rem .6rem;border-left:3px solid #23977a;font:700 .78rem/1.5 sans-serif;letter-spacing:normal}
.console-part.console-input > .console-label{background:#fff1d8;color:#76551b;border-left-color:#be8d29}
.console-part > .console-label::before{content:none}
