/* Meyshan adaptation of Cardio Atlas (Apache-2.0). */
:root{--bg:#081b21;--panel:#102930;--edge:#335058;--ink:#eef5ef;--muted:#b0c5c5;--accent:#a5e8ce;--warm:#f7b6a1;--red:#f1a08f;--side:324px;--font:16px;color-scheme:dark}
html{height:100%;font-size:16px}body{height:100dvh;display:grid;grid-template-columns:var(--side) minmax(0,1fr);grid-template-rows:auto minmax(220px,1fr) minmax(190px,232px);gap:14px;padding:0 18px 18px;overflow:hidden;background:var(--bg);font-size:16px;line-height:1.55}
button,a,input,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #bff5df!important}button{border-radius:10px;font-size:14px;min-height:44px}button:hover{background:#24434a}button:disabled{opacity:.5}.primary{background:#c1efd9;color:#143b36;border-color:#c1efd9;font-weight:650}.primary:hover{background:#a4e3c6;color:#092920}button[aria-pressed=true]{background:#294c50!important;border-color:#9ee4ca!important}
#header{position:relative;inset:auto;grid-column:1/-1;height:auto;min-height:94px;padding:14px 0;gap:16px;border-color:#28434b;background:transparent;flex-wrap:wrap;z-index:40}#brand{min-width:180px;flex:1}#brand strong{display:block;font-size:15px;letter-spacing:.12em;margin-top:6px}#brand strong span{color:var(--accent)}.mx-back{color:var(--muted);font-size:12px;text-decoration:none;letter-spacing:.03em}#menuBtn{width:42px;min-width:42px;height:42px;font-size:20px;border:0;background:transparent}.mx-tabs{display:flex;gap:3px;flex-wrap:wrap}.mx-tabs button{font-size:14px;min-height:42px;padding:7px 11px;background:transparent;border-color:transparent;border-radius:24px}.mx-read{color:var(--accent);background:transparent;border-color:#496d69;white-space:nowrap}.mx-tabs button[aria-pressed=true]{color:#e6fff1;border-color:transparent!important}#quick{flex-wrap:wrap;overflow:visible;margin-bottom:16px;justify-content:start}#quick .icon{min-width:46px;max-width:54px;flex:none}#recLight{font-size:12px}
#sidebar{position:relative;left:auto;top:auto;bottom:auto;grid-column:1;grid-row:2/4;width:auto;max-height:none;overflow:auto;transform:none!important;padding:4px 8px 0 0;z-index:25;transition:none}body.closed #sidebar{display:none}#viewport{position:relative;left:auto!important;right:auto;top:auto;bottom:auto;grid-column:2;grid-row:2;min-height:0;border:1px solid #355058;border-radius:22px;background:radial-gradient(ellipse at 45% 40%,#233c43,#0b2029)}#lesson{position:relative;inset:auto;left:auto!important;grid-column:2;grid-row:3;min-height:0;max-height:none;padding:14px 20px 12px;border-color:#355058;border-radius:18px;background:#10272e}body.closed #viewport,body.closed #lesson{grid-column:1/-1}#lessonTitle{font-size:24px;font-weight:500;letter-spacing:-.025em;margin-block:6px}#lessonText{font-size:var(--font);line-height:1.65}#lessonMeta{font-size:12px}#lessonControls{gap:8px}#lessonControls button{min-height:42px;font-size:16px}#lessonControls #readAgain{min-width:100px}#lessonControls #readAgain:after{content:' Read aloud';font-size:13px}#lessonScroll{font-size:var(--font)}#sourceDetails,#contextLinks{font-size:13px}#statusText{font-size:12px}#corner{font-size:12px;top:18px;left:18px;max-width:52%}#corner strong{font-size:14px}#renderBadge{top:18px;right:18px;font-size:11px}#orientation{font-size:12px}#boot{background:#10272e}#boot p{font-size:16px}#boot>span{display:none}#boot strong{font-family:Georgia,serif;font-size:32px;font-weight:400}
.mx-learning{padding:2px 8px 10px 0}.mx-eyebrow{display:block;color:var(--accent);font-size:12px;letter-spacing:.12em;font-weight:600;line-height:1.7}.mx-learning h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:43px;letter-spacing:-.045em;line-height:1.08;margin:16px 0}.mx-intro{color:var(--muted);font-size:16px;margin:0 0 22px}.mx-current{padding:18px 20px;background:linear-gradient(125deg,#274949,#142e35);border:1px solid #48675f;border-radius:16px;margin:20px 0}.mx-current h2{font-size:24px;line-height:1.25;font-weight:500;margin:9px 0}.mx-current p{font-size:14px;color:#cbddd8;margin:0}.mx-actions{display:grid;gap:8px;margin-bottom:18px}.mx-actions button{width:100%;min-height:48px}.mx-journey-list{display:grid;gap:3px}.mx-journey-list button{text-align:left;min-height:40px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.mx-journey-list button[aria-pressed=true]{color:var(--ink);background:#24494a!important}.mx-sidebar-foot{padding:20px 8px;border-top:1px solid var(--edge);display:grid;gap:8px;font-size:12px;color:var(--muted);margin-top:18px}.mx-sidebar-foot a{font-size:12px}
#sidebar details.menu{background:#10272e;border-color:#365058;border-radius:14px;box-shadow:none;margin-bottom:10px}#sidebar details.menu>summary{font-size:16px;padding:14px}#sidebar .menu-body{padding:12px}#sidebar .list{max-height:40vh}.hint,.warn{font-size:14px}.tag{font-size:12px}.item{font-size:14px}.item .desc{font-size:14px}.group{font-size:12px}.checks label{font-size:14px}#voiceInfo{font-size:14px}.mx-scene-tools{position:absolute;left:18px;top:68px;z-index:16;display:flex;gap:8px}.mx-scene-tools button{background:#0d2730dd;backdrop-filter:blur(8px);border-color:#54746f;font-size:13px;min-height:38px}
.mx-diagram{position:absolute;inset:0;padding:18px 20px 16px;background:radial-gradient(ellipse at 50% 20%,#1c3840,#0b2029);z-index:14;display:flex;flex-direction:column;overflow:auto}.mx-diagram-caption{margin:0 0 16px 160px;text-align:right;color:var(--muted);font-size:12px}.mx-diagram-body{flex:1;display:grid;align-content:center;padding-top:50px}.mx-flow-map{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 18px}.mx-flow-map button{position:relative;font-size:14px;text-align:left;background:#173b49;border-color:#6398aa;min-height:75px;padding:10px;color:#e6f4f8}.mx-flow-map button span{display:block;font-size:12px;color:#a7cdd7;margin-bottom:4px}.mx-flow-map button:after{content:'→';position:absolute;right:-17px;top:28px;color:#8dbab5;font-size:16px}.mx-flow-map button:last-child:after{display:none}.mx-flow-map [data-flow=arterial]{background:#4a302f;border-color:#bb8376}.mx-flow-map [data-flow=arterial] span{color:#f4c2ad}.mx-flow-map [data-flow=exchange]{background:#294c43;border-color:#8fceb0}.mx-flow-map button[aria-pressed=true]{box-shadow:0 0 0 3px #def8dd;background:#356056!important;border-color:#e1f7ce!important}.mx-map-note{font-size:13px;color:var(--muted);margin:16px 0 8px}.mx-legend{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:12px}.mx-legend span{display:flex;align-items:center;gap:7px}.mx-legend i{width:9px;height:9px;border-radius:50%;background:#82bcd0}.mx-legend .mx-arterial{background:#e8a28c}.mx-legend .mx-exchange{background:#9be0b6}.mx-map-mode #corner,.mx-map-mode #renderBadge{display:none}.mx-map-mode .mx-scene-tools{top:12px;left:18px}
.mx-mission-card{display:grid;gap:4px;text-align:left;width:100%;padding:18px;background:#15323a;border-color:#35545b;margin:10px 0}.mx-mission-card strong{font-family:Georgia,serif;font-size:23px;font-weight:400;color:#e9f3eb}.mx-mission-card span{font-size:14px;color:#c0d5d2}.mx-mission-card small{font-size:12px;color:var(--accent);margin-top:8px}.mx-score{font-size:16px;color:var(--accent);padding:12px 0;border-block:1px solid #355058}.mx-learning>button{margin-bottom:10px}.mx-text-button{border:0;background:transparent;padding-left:0;color:#bee3d5;text-align:left}.mx-question{font-family:Georgia,serif;font-size:29px;line-height:1.25;font-weight:400;letter-spacing:-.02em}.mx-answers{display:grid;gap:10px;margin:20px 0}.mx-answers button{min-height:58px;text-align:left;padding:12px 15px;font-size:16px;background:#17373f}.mx-answers [data-result=correct]{border:2px solid #b6e9c9;background:#234d40}.mx-answers [data-result=incorrect]{border:2px solid #efb395;background:#493834}.mx-feedback{color:#e4f0dc;min-height:28px;line-height:1.6;margin-bottom:16px}.mx-source{display:block;font-size:13px;margin-top:12px}.mx-reset{margin-top:16px;font-size:14px;color:var(--muted)}.mx-reset summary{cursor:pointer}.mx-learning textarea{width:100%;padding:12px;border-radius:10px;background:#10272e;color:#eff7ed;border:1px solid #5b8079;font:inherit;resize:vertical}.mx-pump-results{display:grid;gap:9px;margin:18px 0}.mx-pump-results button{display:grid;gap:5px;text-align:left;padding:16px}.mx-pump-results strong{font-size:16px;font-weight:500}.mx-pump-results span{font-size:14px;color:var(--muted)}.mx-pump-results b{font-size:26px;font-weight:450;color:var(--accent)}.mx-pump-results small{font-size:13px;color:var(--muted)}
@media(max-width:1100px){:root{--side:295px}.mx-tabs{order:3;flex-basis:100%;justify-content:center}#header{gap:6px 12px;padding-block:9px;min-height:104px}.mx-learning h1{font-size:38px}.mx-flow-map{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.mx-flow-map button{min-height:64px;font-size:13px}.mx-flow-map button:after{right:-15px}.mx-diagram-body{padding-top:28px}.mx-diagram-caption{font-size:12px}#lessonTitle{font-size:22px}}
@media(max-width:760px){html{height:auto}body{min-height:100dvh;height:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 380px auto auto;gap:10px;padding:0 8px calc(12px + env(safe-area-inset-bottom));overflow:auto}#header{grid-column:1;display:flex;position:relative;min-height:112px;height:auto;padding:10px 4px;gap:8px;background:#081b21}#brand strong{font-size:13px}#brand{min-width:160px}.mx-back{font-size:12px}.mx-tabs{order:3;flex-basis:100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-block:4px}.mx-tabs button{white-space:nowrap;font-size:14px;padding:7px 12px;min-height:44px}.mx-read{font-size:13px;padding:6px 10px;margin-left:auto}#menuBtn{min-width:36px;width:36px}.mx-tabs::-webkit-scrollbar{height:3px}#viewport{grid-column:1;grid-row:2;inset:auto;left:auto!important;min-height:0;max-height:none;border-radius:16px}#sidebar{grid-column:1;grid-row:3;inset:auto;width:auto;max-height:none;overflow:visible;padding:12px 12px 0}#lesson{grid-column:1;grid-row:4;inset:auto;min-height:220px;max-height:none;padding:14px;left:auto!important;border-radius:16px}body.closed #sidebar{display:none}body.closed #lesson{grid-row:3}.mx-learning h1{font-size:40px;margin-top:10px}.mx-intro{font-size:16px}.mx-journey-list{max-height:200px;overflow:auto}.mx-current{margin:12px 0}.mx-sidebar-foot{font-size:12px}.mx-diagram{padding:14px}.mx-diagram-body{padding-top:18px}.mx-flow-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}.mx-flow-map button{min-height:60px;padding:6px;font-size:12px}.mx-flow-map button span{font-size:12px;margin:0}.mx-flow-map button:after{right:-13px;font-size:13px;top:22px}.mx-diagram-caption{margin-left:140px;font-size:12px;margin-bottom:8px;line-height:1.3}.mx-map-note{font-size:12px}.mx-legend{font-size:12px;gap:8px}.mx-map-mode .mx-scene-tools{left:12px;top:12px}.mx-scene-tools{top:56px;left:12px}.mx-scene-tools button{font-size:12px;min-height:38px}.mx-answers button{min-height:58px}#lessonControls{flex-wrap:wrap}#lessonControls button{font-size:16px;min-height:44px;flex:none;min-width:44px;padding:6px 10px}#lessonTitle{font-size:22px}#lessonScroll{max-height:190px;font-size:16px}#lessonText{font-size:var(--font)}#lessonMeta{font-size:12px}#position{font-size:12px}#renderBadge{font-size:11px;max-width:45%}#corner{font-size:12px;max-width:48%}#corner strong{font-size:13px}#statusText{display:block;font-size:12px;max-width:none;white-space:normal}#toasts{top:128px;font-size:14px}.anchor{font-size:14px}#simReadout{font-size:12px}#orientation{font-size:12px}#sidebar .list{max-height:45vh}}
@media(max-width:370px){.mx-read{font-size:12px;padding:4px 6px}#brand{min-width:140px}#brand strong{font-size:12px}.mx-flow-map{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-height:600px) and (min-width:761px){body{height:auto;min-height:100vh;grid-template-rows:auto 400px auto;overflow:auto}#sidebar{max-height:680px}#lesson{min-height:220px}#viewport{min-height:400px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.mx-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:3px;width:100%}.mx-tabs button{font-size:14px;padding:7px 5px}body:not([data-meyshan-mode=journey]){grid-template-rows:auto auto 330px auto}body:not([data-meyshan-mode=journey]) #sidebar{grid-row:2}body:not([data-meyshan-mode=journey]) #viewport{grid-row:3}body.closed:not([data-meyshan-mode=journey]){grid-template-rows:auto 330px auto}body.closed:not([data-meyshan-mode=journey]) #viewport{grid-row:2}body.closed:not([data-meyshan-mode=journey]) #lesson{grid-row:3}}

/* The full reference atlas is the home view. Voice and film stay in sight. */
#header{display:grid;grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr) auto auto;gap:8px 12px;min-height:112px;padding:10px 0}
#menuBtn{grid-column:1;grid-row:1}#brand{grid-column:2;grid-row:1;min-width:0}#mx-studio{grid-column:3;grid-row:1}#mx-read{grid-column:4;grid-row:1}
.mx-tabs{grid-column:1/3;grid-row:2;justify-content:flex-start;flex-wrap:wrap;order:initial}
#quick{grid-column:3/5;grid-row:2;display:flex;justify-content:flex-end;gap:6px;margin:0;overflow:visible;flex-wrap:wrap}
#quick .icon{min-width:44px;max-width:none;width:48px;min-height:44px}#recLight{grid-row:3;grid-column:1/-1}
#sidebar{overscroll-behavior:contain}#sidebar details.menu>summary{min-height:44px}body[data-meyshan-mode=atlas] #sidebar .list{max-height:35vh}
@media(max-width:1100px){#header{grid-template-columns:40px minmax(0,1fr) auto auto}.mx-tabs{grid-column:1/-1;grid-row:2;justify-content:center}#quick{grid-column:1/-1;grid-row:3;justify-content:center}#recLight{grid-row:4}}
@media(max-width:760px){#header{display:grid;grid-template-rows:auto auto auto;grid-template-columns:36px minmax(0,1fr) auto;gap:8px 5px;padding:8px 4px}#brand{grid-column:2}#brand strong{font-size:12px;letter-spacing:.06em}#mx-studio{grid-column:3;grid-row:1;min-height:44px;font-size:13px;padding:5px 8px}#mx-read{grid-column:3;grid-row:2;margin:0;min-height:44px;font-size:13px;padding:5px 8px}.mx-tabs{grid-column:1/3;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.mx-tabs button{font-size:14px;padding:6px 4px;white-space:normal;line-height:1.25}#quick{grid-column:1/-1;grid-row:3;gap:4px;justify-content:space-between}#quick .icon{width:auto;min-width:40px;min-height:44px;flex:1;padding:4px 2px}#quick .icon small{font-size:12px}body[data-meyshan-mode=atlas]{grid-template-rows:auto auto 360px auto}body[data-meyshan-mode=atlas] #sidebar{grid-row:2;max-height:300px;overflow:auto;padding:0 4px}body[data-meyshan-mode=atlas] #viewport{grid-row:3}body[data-meyshan-mode=atlas] #lesson{grid-row:4}body.closed[data-meyshan-mode=atlas]{grid-template-rows:auto 360px auto}body.closed[data-meyshan-mode=atlas] #viewport{grid-row:2}body.closed[data-meyshan-mode=atlas] #lesson{grid-row:3}#sidebar details.menu>summary{padding:10px 12px}body[data-meyshan-mode=atlas] #sidebar .list{max-height:180px}}
@media(max-width:360px){#header{grid-template-columns:32px minmax(0,1fr) auto}.mx-back{font-size:12px}#quick .icon{min-width:36px}.mx-tabs button{font-size:13px}#mx-studio,#mx-read{font-size:12px}}
