/* Shared course discovery and sharing, kept independent of quiz/session state. */
.discovery-icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.discovery-eyebrow{display:block;font-size:9px;font-weight:650;letter-spacing:.16em;line-height:1.8;color:var(--muted)}
.course-discovery,.share-invitation,.recall-share{--discovery-ink:var(--text,var(--ink));--discovery-soft:var(--surface2,var(--soft));color:var(--discovery-ink)}
button.recall-share-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:37px;padding:8px 13px;background:var(--surface);color:var(--discovery-ink,var(--text,var(--ink)));border:1px solid var(--line);border-radius:9px;font-size:11px;font-weight:600;white-space:nowrap}
button.recall-share-trigger:hover{border-color:var(--accent);background:var(--discovery-soft,var(--surface2,var(--soft)))}
.course-discovery{display:grid;grid-template-columns:minmax(200px,.7fr) minmax(0,1.6fr);gap:38px;align-items:center;margin-top:40px;padding:36px 0;border-top:1px solid var(--line)}
.discovery-intro h2{font-size:30px;line-height:1.2;letter-spacing:-.045em;margin:13px 0 16px;font-weight:550}
.discovery-intro>p{font-size:12px;line-height:1.9;color:var(--muted);max-width:290px;margin-bottom:23px}
.discovery-signature{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--muted)}
.discovery-signature img{width:25px;height:25px;opacity:.75}
.ml-course-card{border:1px solid #dcdce8;background:#f1f0f8;border-radius:17px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);box-shadow:0 6px 24px #23234405;min-width:0}
.ml-course-art{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#c3c4ed;background:radial-gradient(ellipse at 70% 50%,#51577c 0,#30394f 70%);padding:18px 0;min-width:0}
.ml-course-art svg{width:185%;max-width:none;opacity:.9}
.ml-course-art>span{position:absolute;left:0;right:0;bottom:27px;text-align:center;font-size:7px;letter-spacing:.15em;color:#d5d9ea;white-space:nowrap}
.ml-course-copy{padding:27px 26px;color:#30354d;min-width:0}
.ml-course-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:7px;font-weight:650;letter-spacing:.13em;color:#666780;line-height:1.8}
.ml-course-label .discovery-icon{width:13px;height:13px}
.ml-course-copy h3{font-size:25px;font-weight:550;letter-spacing:-.04em;line-height:1.2;margin:14px 0 11px;color:inherit}
.ml-course-copy>p{font-size:11px;line-height:1.85;color:#686c80;margin-bottom:17px;max-width:350px}
.ml-course-stats{display:flex;gap:23px;border-top:1px solid #d9dbe6;border-bottom:1px solid #d9dbe6;padding:14px 0 13px;margin-bottom:18px}
.ml-course-stats>span{font-size:9px;color:#6c6e82;line-height:1.7}
.ml-course-stats strong{display:block;font-size:21px;font-weight:550;color:#414960;letter-spacing:-.04em}
a.ml-course-link{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#414e71;font-size:11px;font-weight:650;text-decoration:none;border-radius:6px;padding:3px 0}
a.ml-course-link:hover{text-decoration:underline;text-underline-offset:4px}
.ml-course-copy>small{display:block;font-size:8px;color:#71778a;margin-top:6px;line-height:1.7}
.share-invitation{display:flex;align-items:center;gap:18px;padding:22px 25px;border:1px solid var(--line);background:var(--surface);border-radius:13px;margin:0 0 29px}
.share-invitation-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--accent);flex-shrink:0}
.share-invitation h2{font-size:19px;letter-spacing:-.035em;font-weight:550;margin:0 0 5px;line-height:1.3}
.share-invitation p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}
.share-invitation .recall-share-trigger{margin-left:auto;background:var(--discovery-soft);padding:10px 17px}
dialog.recall-share{box-sizing:border-box;width:min(94vw,940px);max-width:940px;max-height:90dvh;padding:30px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--discovery-ink);overflow-y:auto;box-shadow:0 30px 110px #0c251b40}
.recall-share::backdrop{background:#10251bb3;backdrop-filter:blur(5px)}
.recall-share-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:27px}
.recall-share-heading h2{font-family:Georgia,'Times New Roman',serif;font-size:37px;letter-spacing:-.045em;line-height:1.15;font-weight:400;margin:8px 0 10px;padding:0}
.recall-share-heading p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}
.recall-share-close{align-self:flex-start;display:grid;place-items:center;padding:8px;min-height:34px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted)}
.recall-share-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:start}
.recall-share-preview{padding:12px;border:1px solid var(--line);background:var(--discovery-soft);border-radius:14px;min-width:0}
.recall-share-preview>img{display:block;max-width:100%;width:100%;height:auto;aspect-ratio:1200/630;object-fit:contain;border-radius:8px}
.recall-share-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:15px 3px 0}
.recall-share-caption>span{font-size:8px;letter-spacing:.13em;font-weight:650;color:var(--muted)}
a.recall-save-card{display:inline-flex;align-items:center;gap:6px;color:var(--discovery-ink);font-size:10px;font-weight:600;text-decoration:none;min-height:32px;border-radius:5px}
.recall-save-card:hover{text-decoration:underline}
.recall-save-card .discovery-icon{width:14px;height:14px}
.recall-share-preview>p{font-size:10px;color:var(--muted);line-height:1.7;margin:3px 3px 5px}
.recall-share-options{min-width:0;padding-top:3px}
.recall-share-options>.discovery-eyebrow{font-size:7px}
.recall-share-options h3{font-size:19px;letter-spacing:-.03em;line-height:1.3;margin:10px 0}
.recall-share-options>p{font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 17px}
button.recall-native-share{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:43px;background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink,var(--on-accent));font-size:12px;border-radius:9px;margin:0 0 10px;padding:11px}
button.recall-native-share:hover{background:var(--accent);filter:brightness(.95)}
button.recall-native-share[hidden]{display:none}
.recall-social-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
.recall-social-options a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:41px;padding:10px 7px;border:1px solid var(--line);border-radius:8px;font-size:10px;font-weight:550;text-decoration:none;background:var(--surface)}
.recall-social-options a:hover{border-color:var(--accent);background:var(--discovery-soft)}
.recall-social-options .discovery-icon{width:15px;height:15px}
.recall-social-options .discovery-icon:last-child{width:11px;height:11px;opacity:.55}
.recall-link-label{display:block;font-size:10px;color:var(--muted);margin-bottom:7px}
.recall-copy-row{display:flex;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--discovery-soft);gap:3px;min-width:0}
.recall-copy-row input{width:100%;min-width:0;flex:1;border:0;border-radius:5px;background:transparent;padding:6px;font-size:10px;color:var(--discovery-ink);box-shadow:none}
.recall-copy-row button{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:5px;background:var(--surface);padding:8px 10px;font-size:10px;color:var(--discovery-ink)}
.recall-copy-row .discovery-icon{width:13px;height:13px}
.recall-share-options .recall-share-status{font-size:10px;line-height:1.7;margin:8px 0;min-height:17px;color:var(--accent)}
.recall-share-options .recall-share-privacy{display:flex;align-items:center;gap:6px;font-size:9px;margin:0;color:var(--muted)}
.recall-share-privacy .discovery-icon{width:13px;height:13px;color:var(--accent)}
:root[data-theme=dark] .ml-course-card{background:#242d40;border-color:#3b465f}
:root[data-theme=dark] .ml-course-copy{color:#e1e3f3}
:root[data-theme=dark] .ml-course-copy>p,:root[data-theme=dark] .ml-course-label,:root[data-theme=dark] .ml-course-stats>span,:root[data-theme=dark] .ml-course-copy>small{color:#b2b9d0}
:root[data-theme=dark] .ml-course-stats{border-color:#424c65}
:root[data-theme=dark] .ml-course-stats strong,:root[data-theme=dark] a.ml-course-link{color:#d3dafa}
:root[data-theme=paper] .ml-course-card{background:#eeeadf;border-color:#d3cdbf}
:root[data-theme=paper] .ml-course-art{background:#54594e;color:#d4d6c2}
:root[data-theme=paper] .ml-course-copy{color:#3c4038}
:root[data-theme=paper] .ml-course-copy>p,:root[data-theme=paper] .ml-course-label,:root[data-theme=paper] .ml-course-stats>span,:root[data-theme=paper] .ml-course-copy>small{color:#696e61}
:root[data-theme=paper] .ml-course-stats{border-color:#cecebf}
:root[data-theme=paper] .ml-course-stats strong,:root[data-theme=paper] a.ml-course-link{color:#45553d}
@media(max-width:1100px){.course-discovery{grid-template-columns:minmax(170px,.7fr) minmax(0,1.7fr);gap:24px}.ml-course-card{grid-template-columns:minmax(0,.65fr) minmax(0,2fr)}.ml-course-copy{padding:25px 22px}.ml-course-copy h3{font-size:23px}.ml-course-art>span{font-size:6px}.discovery-intro h2{font-size:28px}}
@media(max-width:740px){.course-discovery{grid-template-columns:1fr;gap:23px;padding-top:28px;margin-top:30px}.discovery-intro h2{font-size:29px}.discovery-intro>p{max-width:480px;margin-bottom:15px}.ml-course-card{grid-template-columns:minmax(0,.75fr) minmax(0,2fr)}.ml-course-copy{padding:25px}.ml-course-art>span{font-size:7px}.share-invitation{padding:20px;gap:13px}.share-invitation p{max-width:240px}.recall-share-layout{grid-template-columns:1fr;gap:23px}dialog.recall-share{width:min(94vw,520px);padding:25px;max-height:90dvh}.recall-share-heading{margin-bottom:20px}.recall-share-heading h2{font-size:33px}.recall-share-options>.discovery-eyebrow{font-size:8px}.recall-share-options h3{font-size:20px}.recall-share-options>p{font-size:12px}.recall-social-options a{font-size:12px;min-height:44px}.recall-copy-row input{font-size:12px}.recall-copy-row button{font-size:11px}.recall-share-caption>span{font-size:8px}.recall-share-preview>p{font-size:11px}.recall-link-label{font-size:11px}.recall-share-options .recall-share-privacy{font-size:10px}.recall-share-options .recall-share-status{font-size:11px}.recall-native-share{min-height:44px}}
@media(max-width:520px){button.recall-share-trigger{width:34px;min-height:34px;padding:8px;gap:0}button.recall-share-trigger>span{display:none}.recall-share-trigger .discovery-icon{width:16px;height:16px}.masthead .brand{min-width:0}.masthead .brand>span:not(.course-name){font-size:21px}.masthead .brand img{width:28px;height:28px}.header-actions button.recall-share-trigger{min-width:32px;width:32px;padding:7px;border-color:var(--line);font-size:11px}.course-discovery{gap:21px;margin-top:28px;padding-top:26px;padding-bottom:26px}.discovery-eyebrow{font-size:8px}.discovery-intro h2{font-size:28px}.discovery-intro>p{font-size:12px}.ml-course-card{grid-template-columns:minmax(0,.5fr) minmax(0,2fr);border-radius:13px}.ml-course-art svg{width:320%;transform:translateX(-10%)}.ml-course-art>span{display:none}.ml-course-copy{padding:23px 19px}.ml-course-label{font-size:6px;letter-spacing:.09em}.ml-course-copy h3{font-size:23px;margin-top:13px}.ml-course-copy>p{font-size:11px}.ml-course-stats{gap:20px;padding:13px 0}.ml-course-stats strong{font-size:21px}.ml-course-stats>span{font-size:8px}.ml-course-copy>small{font-size:8px}.ml-course-link{font-size:11px}.share-invitation{gap:13px;align-items:center;padding:19px 16px;margin-bottom:20px}.share-invitation-mark{display:none}.share-invitation h2{font-size:19px}.share-invitation p{font-size:10px;max-width:220px}.share-invitation .recall-share-trigger{width:auto;min-width:65px;padding:10px 13px;gap:6px}.share-invitation .recall-share-trigger>span{display:inline}.share-invitation .recall-share-trigger>.discovery-icon{width:14px;height:14px}dialog.recall-share{padding:22px 18px;border-radius:17px}.recall-share-heading{gap:9px}.recall-share-heading h2{font-size:31px}.recall-share-heading .discovery-eyebrow{font-size:7px}.recall-share-heading p{font-size:11px}.recall-share-close{padding:7px;min-height:32px}.recall-share-preview{padding:9px}.recall-share-options h3{font-size:19px}.recall-share-options>p{font-size:11px}.recall-copy-row input{font-size:11px}.recall-share-layout{gap:20px}}
