/* One reading surface, one decision; no legacy term injection or nested cards. */
body.micro-mode {background:#f2f2f7;color:#1c1c1e;overflow-x:hidden}
body.micro-guest {padding-bottom:0}
.micro-guest .topbar nav {display:none!important}
.micro-mode,.micro-page,.micro-page button {font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Microsoft YaHei",sans-serif}
.micro-mode * {box-sizing:border-box;animation:none!important;transition:none!important;scroll-behavior:auto!important}
.micro-mode .topbar {background:#fff;border-bottom:1px solid #e5e5ea;min-height:58px;padding:10px 20px;backdrop-filter:none}
.micro-mode .topbar .brand {font-size:19px;letter-spacing:-.5px}
.micro-mode .topbar nav button {font-size:11px}
.micro-mode .app-shell {background:#f2f2f7}
.micro-page {width:min(100%,640px);margin:0 auto;padding:28px 24px 110px;min-width:0}
.micro-page h1 {font-size:28px;font-weight:750;line-height:1.28;letter-spacing:-.7px;margin:12px 0 20px;color:#1c1c1e;overflow-wrap:anywhere}
.micro-page h2 {font-size:18px;line-height:1.5;letter-spacing:0;margin:0 0 15px;color:#1c1c1e}
.micro-page p {font-size:17px;line-height:1.7;color:#3a3a3c;margin:12px 0;overflow-wrap:anywhere}
.micro-page button {cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.micro-page button:focus-visible,.micro-page summary:focus-visible {outline:3px solid #007aff;outline-offset:3px}
.micro-position {display:flex;align-items:center;justify-content:space-between;min-height:30px;gap:8px;font-size:13px;font-weight:600;color:#636366}
.micro-text {padding:12px 0;border:0;background:transparent;color:#0066d6;font-size:14px;min-height:44px;text-align:left}
.micro-progress {display:block;width:100%;height:4px;margin:7px 0 24px;border:0;border-radius:4px;overflow:hidden;background:#e5e5ea;accent-color:#007aff}
.micro-progress::-webkit-progress-bar {background:#e5e5ea}
.micro-progress::-webkit-progress-value {background:#007aff}
.micro-card {padding:0;border:0;background:transparent}
.micro-page .micro-kicker {color:#0066d6;font-size:12px;font-weight:650;line-height:1.5;margin:0 0 8px;letter-spacing:.2px}
.micro-page .micro-story {font-size:17px;line-height:1.8;margin:16px 0 25px;color:#3a3a3c}
.micro-question {border-top:1px solid #dedee4;padding-top:20px}
.micro-question h2 {font-size:18px;font-weight:650}
.micro-options {display:grid;gap:10px}
.micro-option {display:flex;align-items:center;gap:12px;width:100%;min-height:57px;padding:14px 15px;text-align:left;border:1px solid #dcdce2;border-radius:13px;background:#fff;color:#1c1c1e;font-size:16px;line-height:1.5;font-weight:500;overflow-wrap:anywhere}
.micro-letter {flex:0 0 23px;color:#8e8e93;font-size:14px;font-weight:600;align-self:flex-start;padding-top:2px}
.micro-option:disabled {opacity:1;cursor:default}
.micro-option.is-selected {border-color:#007aff}
.micro-option.is-correct {border-color:#248a3d;background:#edf7ef}
.micro-option.is-correct .micro-letter {color:#248a3d}
.micro-option.is-wrong {border-color:#bc6322;background:#fff6eb}
.micro-option.is-wrong .micro-letter {color:#a65319}
.micro-primary {display:block;width:100%;border:0;border-radius:13px;padding:16px 20px;background:#007aff;color:#fff;font-size:17px;font-weight:650;line-height:1.4;text-align:center;min-height:54px;margin-top:24px}
.micro-primary:disabled {opacity:.6}
.micro-feedback {margin-top:22px;padding:18px 0 0;border-top:1px solid #dedee4;outline:none}
.micro-feedback>strong {color:#248a3d;font-size:18px}
.micro-feedback.feedback-rethink>strong {color:#9b501a}
.micro-feedback p {font-size:16px;line-height:1.7}
.micro-feedback .micro-takeaway {font-weight:650;color:#1c1c1e}
.micro-feedback small {color:#636366;font-size:13px}
.micro-page .micro-error {font-size:14px;color:#a43424}
.micro-page .micro-basis,.micro-page .micro-rest {font-size:12px;line-height:1.5;color:#76767b;margin-top:22px}
.micro-page .micro-rest {text-align:center;margin-top:26px}
.micro-sources {margin-top:24px;font-size:12px;color:#636366;line-height:1.6}
.micro-sources summary {cursor:pointer;padding:10px 0;min-height:36px}
.micro-sources a {display:block;color:#0066d6;overflow-wrap:anywhere}
.micro-sources p {font-size:12px}
.micro-intro {margin:0 0 20px;padding-bottom:20px;border-bottom:1px solid #dedee4}
.micro-intro strong {display:block;font-size:25px;font-weight:750;letter-spacing:-.6px}
.micro-intro span {display:block;font-size:14px;margin-top:5px;color:#636366}
.micro-intro p {font-size:14px;margin:9px 0 0}
.micro-sr {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.micro-map {display:grid;gap:26px;margin:26px 0}
.micro-map>section h2 {display:flex;align-items:center;gap:10px;font-size:15px;color:#636366;margin-bottom:10px}
.micro-map>section h2>span {font-size:12px;color:#007aff}
.micro-map>section>div {border-radius:14px;background:#fff;overflow:hidden}
.micro-node {border-bottom:1px solid #e5e5ea}
.micro-node:last-child {border:0}
.micro-node summary {display:flex;gap:12px;padding:15px 16px;cursor:pointer;font-size:16px;list-style:none;font-weight:500}
.micro-node summary::-webkit-details-marker {display:none}
.micro-node summary span {color:#aeaeb2}
.micro-node.is-seen summary span {color:#248a3d}
.micro-node.needs-review summary span {color:#ac5b1d}
.micro-node p,.micro-node small {margin:0;padding:0 16px 12px 42px;font-size:14px;display:block}
.micro-node small {font-size:12px;color:#636366}
.micro-page .micro-description {font-size:15px}
.micro-stats {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 0;border-bottom:1px solid #dcdce2;gap:10px}
.micro-stats strong {display:block;font-size:30px;color:#1c1c1e;letter-spacing:-1px}
.micro-stats strong small {font-size:13px;color:#8e8e93;letter-spacing:0}
.micro-stats span {font-size:13px;color:#636366;display:block;margin-top:8px}
.micro-personal {padding:30px 0 14px}
.micro-personal h2,.micro-library h2 {font-size:17px;font-weight:650}
.micro-personal p {font-size:15px;color:#636366}
.micro-library {margin-top:20px}
.micro-library>button {display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid #e5e5ea;background:transparent;padding:17px 0;width:100%;text-align:left;font-size:16px;color:#0066d6}
.micro-milestone>p {font-size:16px}
.micro-mode .tutor-fab {width:40px;height:40px;right:8px;bottom:calc(77px + env(safe-area-inset-bottom));font-size:20px;box-shadow:none!important}
.micro-mode .tutor-fab b {display:none}
/* Scope out the old site's universal !important type rules. */
.micro-page {font-size:17px!important}
.micro-page * {font-size:inherit!important}
.micro-page h1 {font-size:28px!important}
.micro-page h2,.micro-feedback>strong {font-size:18px!important}
.micro-page .micro-position {font-size:13px!important}
.micro-page .micro-kicker {font-size:12px!important}
.micro-page .micro-story,.micro-page .micro-primary {font-size:17px!important}
.micro-page .micro-option,.micro-page .micro-feedback p {font-size:16px!important}
.micro-page .micro-text,.micro-page .micro-letter,.micro-page .micro-error {font-size:14px!important}
.micro-page .micro-basis,.micro-page .micro-rest,.micro-page .micro-sources {font-size:12px!important}
.micro-page .micro-feedback small {font-size:13px!important}
.micro-page .micro-intro>strong {font-size:25px!important}
.micro-page .micro-intro :is(span,p) {font-size:14px!important}
.micro-page .micro-description,.micro-page .micro-personal p {font-size:15px!important}
.micro-page .micro-map h2 {font-size:15px!important}
.micro-page .micro-node summary {font-size:16px!important}
.micro-page .micro-node p {font-size:14px!important}
.micro-page .micro-node small {font-size:12px!important}
.micro-page .micro-stats strong {font-size:30px!important}
.micro-page .micro-stats :is(span,small) {font-size:13px!important}
.micro-page .micro-library>button {font-size:16px!important}
@media(max-width:900px) {
  .micro-page {padding:20px 20px 110px}
  .micro-page h1 {font-size:27px!important}
  .micro-mode .topbar nav {grid-template-columns:repeat(3,1fr);background:#fff;backdrop-filter:none}
  .micro-mode .topbar nav button {flex:1;min-width:0;min-height:52px}
  .micro-mode .header-actions .user-chip {display:none}
}
@media(max-width:350px) {
  .micro-page {padding-inline:16px}
  .micro-page h1 {font-size:25px!important}
  .micro-page .micro-story {font-size:16px!important}
  .micro-page .micro-option {font-size:15px!important;padding:12px;gap:8px}
}
