/* V29 extends the existing white theme; no nested scrolling or fixed-height forms. */
.mh-reader-login,.mh-reader-account,.mh-reader-gate,.mh-reader-newsletter{min-width:0;max-width:100%;overflow-wrap:anywhere}
.mh-reader-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;max-width:100%;padding:10px 16px;border:1px solid var(--line,#ddd);border-radius:8px;background:var(--paper,#fff);color:var(--text,#222);font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer;text-decoration:none;text-align:center}
.mh-reader-button svg{width:20px;height:20px;flex-shrink:0}.mh-reader-button:disabled{opacity:.65;cursor:wait}.mh-reader-button:hover{background:var(--bg,#fafafa)}
.mh-reader-button:focus-visible,.mh-reader-link:focus-visible,.mh-reader-check input:focus-visible{outline:2px solid var(--text,#222);outline-offset:4px}
.mh-reader-login>small{display:block;font-size:12px;line-height:1.75;color:var(--muted,#626262);margin-top:12px}
.mh-reader-status:empty{display:none}.mh-reader-status{font-size:13px;margin:10px 0;line-height:1.65}
.mh-reader-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:0;background:transparent;padding:8px 0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.mh-reader-link svg{width:18px;height:18px}
.mh-reader-identity{display:flex;align-items:center;flex-wrap:wrap;gap:14px;border:1px solid var(--line,#e7e7e7);border-radius:8px;padding:16px;margin:20px 0;background:var(--paper,#fff)}
.mh-reader-identity>div{flex:1;min-width:0}.mh-reader-identity strong,.mh-reader-identity span:not(.mh-reader-avatar){display:block}.mh-reader-identity span{font-size:13px;color:var(--muted,#626262)}
.mh-reader-avatar{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--bg,#f5f5f5);font-weight:600;color:inherit}
.mh-reader-layout{display:block;max-width:850px;margin-inline:auto}.mh-reader-account .ml-article-head{margin-bottom:24px}.mh-reader-account h2{font-size:18px;line-height:1.5;margin:24px 0 12px}
.mh-reader-account p{line-height:1.75}.mh-reader-preferences{margin:24px 0}.mh-reader-preferences>.mh-reader-button{margin-top:22px}
.mh-reader-check{display:flex;align-items:flex-start;gap:12px;padding:12px 0;cursor:pointer;line-height:1.6}.mh-reader-check input{appearance:auto;width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:#333}
.mh-reader-check small{display:block;color:var(--muted,#626262);font-size:12px;margin-top:6px;line-height:1.75}
.mh-reader-note,.mh-reader-activity-note{font-size:12px;line-height:1.75;color:var(--muted,#626262)}.mh-reader-note{margin:20px 0}.mh-reader-activity-note{padding:14px 0;margin:20px 0;border-top:1px solid var(--line,#eee)}
.mh-reader-gate{padding:26px 24px;margin:28px 0;border:1px solid var(--line,#e7e7e7);border-radius:10px;background:var(--paper,#fff)}.mh-reader-gate h2{font-size:22px;line-height:1.45;margin:12px 0}.mh-reader-gate>p{font-size:14px;line-height:1.75;margin-bottom:20px}
.mh-reader-gate-icon svg{width:24px;height:24px}.mh-reader-newsletter{border-block:1px solid var(--line,#e7e7e7);padding:24px 0;margin:28px 0}.mh-reader-newsletter>div{display:flex;align-items:center;gap:10px}.mh-reader-newsletter svg{width:20px;height:20px}.mh-reader-newsletter h2{font-size:18px;margin:0;line-height:1.5}.mh-reader-newsletter p{font-size:14px;line-height:1.75;margin:10px 0 4px}
.mh-reader-notice{padding:14px 16px;border:1px solid var(--line,#ddd);border-radius:8px;background:var(--paper,#fff);font-size:14px;line-height:1.7}.mh-reader-notice.success{border-color:#8ba998}.mh-reader-notice.error{border-color:#bd8d8d}
.mh-contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px}.mh-contact-submit svg{width:18px;height:18px}.mh-reader-login [data-google-button]{max-width:100%;min-height:44px}.mh-reader-entry svg{width:20px;height:20px}
@media(max-width:600px){.mh-reader-gate{padding:20px 16px}.mh-reader-gate h2{font-size:20px}.mh-reader-button{width:100%;padding-inline:12px}.mh-reader-layout .mh-reader-account{padding-inline:0}.mh-reader-identity{padding:14px;gap:10px}.mh-reader-account .ml-article-head h1{font-size:clamp(24px,7vw,32px)}.mh-reader-check{padding:12px 0}}
@media(prefers-reduced-motion:reduce){.mh-reader-gate *{scroll-behavior:auto}}
