/* Approved whole-site design, account and reader surfaces. Screen-only by contract:
   no chart source, entitlement, reader state, memo or PDF layout is changed here. */
@media screen {
  .hdsl-design-v2 {
    --reader-paper:#f5f2ed;--reader-card:#fffcf7;--reader-ink:#1a2b4c;
    --reader-muted:#57647a;--reader-line:#d9cfbf;--reader-gold:#97733d;--reader-soft:#ebe4d8;
  }
  .hdsl-design-v2 .design-reader-eyebrow { margin:0 0 8px; font:500 11px/1.7 -apple-system,BlinkMacSystemFont,sans-serif; letter-spacing:.14em; color:var(--reader-gold); }
  .hdsl-design-v2 .design-reader-lead { margin:7px 0 18px; font-size:14px; line-height:1.9; color:var(--reader-muted); }
  .hdsl-design-v2 .design-library-navigation { display:flex; flex-wrap:wrap; gap:4px 28px; padding:10px 0 14px; border-bottom:1px solid var(--reader-line); margin:0 0 22px; }
  .hdsl-design-v2 .design-library-navigation a { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--reader-ink); font-size:13px; text-decoration:underline; text-decoration-color:var(--reader-line); text-underline-offset:5px; }
  .hdsl-design-v2 .design-library-navigation a > [aria-hidden] { color:var(--reader-gold); }
  .hdsl-design-v2 .design-library-navigation a:focus-visible { outline:2px solid var(--reader-gold); outline-offset:3px; }

  /* Login: a clear explanation alongside the original, secured provider forms. */
  .hdsl-design-v2.design-login-page .login-shell { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,440px); align-items:start; gap:24px 72px; max-width:1040px; width:calc(100% - 64px); padding:52px 0 64px; }
  .hdsl-design-v2 .design-login-intro { grid-column:1; grid-row:1 / span 3; padding:15px 0; min-width:0; }
  .hdsl-design-v2 .design-login-intro .brand { text-align:left; color:var(--reader-gold); letter-spacing:.14em; }
  .hdsl-design-v2 .design-login-intro .design-login-headline { font:400 clamp(28px,3.3vw,40px)/1.7 Georgia,"Yu Mincho","Noto Serif TC",serif; margin:16px 0 30px; color:var(--reader-ink); }
  .hdsl-design-v2 .design-login-steps { display:grid; gap:18px; list-style:none; padding:0; margin:0; }
  .hdsl-design-v2 .design-login-steps li { display:grid; grid-template-columns:28px 1fr; gap:12px; padding:0 0 18px; border-bottom:1px solid var(--reader-line); }
  .hdsl-design-v2 .design-login-steps li > span { color:var(--reader-gold); font:400 20px/1.5 Georgia,serif; }
  .hdsl-design-v2 .design-login-steps h2 { font-size:15px; line-height:1.8; font-weight:500; margin:0 0 5px; }
  .hdsl-design-v2 .design-login-steps p { font-size:13px; line-height:1.85; color:var(--reader-muted); margin:0; }
  .hdsl-design-v2 .design-login-form { grid-column:2; min-width:0; }
  .hdsl-design-v2.design-login-page .title { font:400 30px/1.55 Georgia,"Yu Mincho","Noto Serif TC",serif; text-align:left; margin:0 0 12px; }
  .hdsl-design-v2.design-login-page .lead { text-align:left; font-size:13px; line-height:1.85; margin-bottom:22px; color:var(--reader-muted); }
  .hdsl-design-v2.design-login-page .card { background:var(--reader-card); border:1px solid var(--reader-line); border-top:2px solid var(--reader-gold); padding:28px; border-radius:4px; box-shadow:8px 8px 0 var(--reader-soft); }
  .hdsl-design-v2.design-login-page .provider-title { font:500 15px/1.7 -apple-system,BlinkMacSystemFont,sans-serif; text-align:left; }
  .hdsl-design-v2.design-login-page .line-btn,.hdsl-design-v2.design-login-page .submit-btn { border-radius:4px; min-height:50px; font-size:14px; }
  .hdsl-design-v2.design-login-page .submit-btn { background:var(--reader-ink); }
  .hdsl-design-v2.design-login-page input { border-color:var(--reader-line); border-radius:4px; font-size:16px; }
  .hdsl-design-v2 .design-login-account-note { border-top:1px solid var(--reader-line); margin-top:22px; padding-top:18px; }
  .hdsl-design-v2 .design-login-account-note strong { display:block; font-size:13px; font-weight:500; line-height:1.85; }
  .hdsl-design-v2 .design-login-account-note p { font-size:12px; color:var(--reader-muted); line-height:1.9; margin:8px 0 0; }
  .hdsl-design-v2.design-login-page .footer { grid-column:2; margin-top:0; }
  .hdsl-design-v2.design-login-page .back { grid-column:2; margin-top:0; }

  /* Keep the compact table, real inputs, IME handling and row selection in place. */
  .hdsl-design-v2 .mypage-workspace { max-width:1080px; padding:20px 28px 88px; color:var(--reader-ink); }
  .hdsl-design-v2 .mypage-heading-row { margin-bottom:12px; align-items:baseline; flex-wrap:wrap; gap:4px 16px; }
  .hdsl-design-v2 .mypage-heading-row h1 { font:400 28px/1.4 Georgia,"Yu Mincho","Noto Serif TC",serif; margin:0; }
  .hdsl-design-v2 .mypage-account-label { font-size:12px; color:var(--reader-muted); }
  .hdsl-design-v2 .mypage-own { background:var(--reader-soft); border:0; border-left:2px solid var(--reader-gold); padding:15px 18px; border-radius:0; margin:18px 0 8px; }
  .hdsl-design-v2 .mypage-own-label { color:var(--reader-gold); }
  .hdsl-design-v2 .mypage-own-identity { gap:4px 12px; }
  .hdsl-design-v2 #mypage-own-name { font-weight:500; }
  .hdsl-design-v2 .mypage-own .mypage-btn-primary { min-width:84px; background:var(--reader-ink); border-color:var(--reader-ink); border-radius:4px; }
  .hdsl-design-v2 .mypage-capacity { color:var(--reader-muted); font-size:11px; margin-bottom:10px; }
  .hdsl-design-v2 .mypage-own-shortcut { margin:0; padding:8px 14px; }
  .hdsl-design-v2 .mypage-own-shortcut .mypage-own-label { flex-basis:auto; }
  .hdsl-design-v2 .mypage-own-shortcut .mypage-own-meta { flex-basis:auto; }
  .hdsl-design-v2 .mypage-own-shortcut .mypage-own-row { gap:12px; }
  .hdsl-design-v2 .mypage-own-shortcut .mypage-btn-primary { flex-shrink:0; }
  .hdsl-design-v2 .mypage-own-tools { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:0 12px; }
  .hdsl-design-v2 .mypage-own-tools details { min-width:0; max-width:100%; }
  .hdsl-design-v2 .mypage-own-tools details[open] { flex-basis:100%; }
  .hdsl-design-v2 .mypage-own-tools summary { padding:4px 0; line-height:24px; }
  .hdsl-design-v2 .mypage-own-tools .mypage-capacity { margin:0 0 0 auto; }
  .hdsl-design-v2 .mypage-workspace .design-library-navigation { padding:4px 0 6px; margin-bottom:12px; }
  .hdsl-design-v2 .mypage-tabs { border-color:var(--reader-line); gap:16px; margin-bottom:18px; }
  .hdsl-design-v2 .mypage-tab { border-radius:0; padding:11px 3px; color:var(--reader-muted); }
  .hdsl-design-v2 .mypage-tab.is-active { background:transparent; color:var(--reader-ink); border-bottom-color:var(--reader-gold); }
  .hdsl-design-v2 .mypage-table-wrap { border:1px solid var(--reader-line); border-radius:4px; background:var(--reader-card); }
  .hdsl-design-v2 #mypage-table { margin:0; }
  .hdsl-design-v2 #mypage-table th { background:var(--reader-soft); border-bottom-color:var(--reader-line); }
  .hdsl-design-v2 #mypage-table tbody td { border-bottom-color:var(--reader-line); }
  .hdsl-design-v2 #mypage-table .mypage-column-filters td { background:var(--reader-card); }
  .hdsl-design-v2 .mypage-workspace input[type="search"],.hdsl-design-v2 .mypage-workspace select { background:var(--reader-card); border-color:var(--reader-line); border-radius:4px; }
  .hdsl-design-v2 .mypage-group-chip { border-color:var(--reader-line); border-radius:4px; background:var(--reader-card); }
  .hdsl-design-v2 .mypage-group-chip.is-active { background:var(--reader-ink); border-color:var(--reader-ink); color:var(--reader-card); }
  .hdsl-design-v2 .mypage-btn { border-radius:4px; }
  .hdsl-design-v2 .mypage-details-panel { background:var(--reader-card); border-radius:4px; }
  .hdsl-design-v2 .mypage-fab { background:var(--reader-ink); border-radius:4px; box-shadow:0 4px 16px #1a2b4c20; }

  /* Existing daily/cycle reader, first-layer completed images and closed evidence. */
  .hdsl-design-v2.monthly-page { --monthly-paper:var(--reader-paper);--monthly-surface:var(--reader-card);--monthly-ink:var(--reader-ink);--monthly-muted:var(--reader-muted);--monthly-line:var(--reader-line);--monthly-gold:var(--reader-gold);--monthly-gold-dark:var(--reader-gold); }
  .hdsl-design-v2.monthly-reader-page .sample-report { max-width:1120px; }
  .hdsl-design-v2 .monthly-reader-heading { padding:25px 0 12px; border-bottom:0; }
  .hdsl-design-v2 .monthly-reader-heading h1 { font-size:28px; line-height:1.65; }
  .hdsl-design-v2 .monthly-reader-note { color:var(--reader-muted); }
  .hdsl-design-v2 .monthly-cycle-navigation { gap:20px; border-bottom-color:var(--reader-line); }
  .hdsl-design-v2 .monthly-reader-controls { border-bottom:1px solid var(--reader-line); }
  .hdsl-design-v2 .monthly-reader-controls select,.hdsl-design-v2 .monthly-reader-step { border-radius:4px; }
  .hdsl-design-v2 .monthly-day-card { border-radius:4px; }
  .hdsl-design-v2.monthly-daily-reading-page .monthly-day-card { border:1px solid var(--reader-line); }
  .hdsl-design-v2.monthly-daily-reading-page .monthly-day-card { box-shadow:6px 6px 0 var(--reader-soft); }
  .hdsl-design-v2 .monthly-day-intro h3 { color:var(--reader-ink); }
  .hdsl-design-v2 .monthly-day-reading .monthly-day-evidence { border-color:var(--reader-line); }
  .hdsl-design-v2 .monthly-mind-scene,.hdsl-design-v2 .monthly-memo { background:var(--reader-soft); }
  .hdsl-design-v2 .monthly-history { border-color:var(--reader-line); border-radius:4px; }
  .hdsl-design-v2 .monthly-button { border-radius:4px; font-weight:500; }
  .hdsl-design-v2 .monthly-button-primary { background:var(--reader-ink); border-color:var(--reader-ink); color:var(--reader-card); }
  .hdsl-design-v2.monthly-landing .monthly-hero { width:min(1120px,calc(100% - 56px)); grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr); gap:60px; min-height:0; padding:48px 0 56px; }
  .hdsl-design-v2.monthly-landing .monthly-hero h1 { font-size:clamp(32px,4.2vw,48px); line-height:1.6; }
  .hdsl-design-v2.monthly-landing .monthly-lead { font-size:15px; line-height:1.95; }
  .hdsl-design-v2.monthly-landing .monthly-hero-visual { border:1px solid var(--reader-line); border-radius:4px; box-shadow:8px 8px 0 var(--reader-soft); }
  .hdsl-design-v2.monthly-landing .monthly-section { width:min(1120px,calc(100% - 56px)); padding-top:42px; padding-bottom:42px; }
  .hdsl-design-v2.monthly-landing .monthly-section h2 { font-size:28px; font-weight:400; }
  .hdsl-design-v2.monthly-landing .monthly-now-note { background:var(--reader-soft); border-left-color:var(--reader-gold); }

  /* Purchased reports retain server-side chapter content and entitlement gates. */
  .hdsl-design-v2.natal-page .natal-main { max-width:1080px; padding-top:34px; }
  .hdsl-design-v2 .natal-reader-head { border-bottom:1px solid var(--reader-line); padding-bottom:20px; margin-bottom:30px; }
  .hdsl-design-v2.natal-reader-page h1 { font-size:32px; }
  .hdsl-design-v2 .natal-card { border-color:var(--reader-line); border-radius:4px; background:var(--reader-card); box-shadow:none; }
  .hdsl-design-v2 .natal-reader-opening { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,400px); gap:48px; align-items:start; margin-bottom:38px; }
  .hdsl-design-v2 .natal-reader-opening .natal-chart { margin:0 auto; width:100%; }
  .hdsl-design-v2 .natal-reader-opening .natal-reader-head { margin:0; padding:10px 0 24px; border:0; }
  .hdsl-design-v2 .natal-toc { border:0; border-top:1px solid var(--reader-line); border-bottom:1px solid var(--reader-line); border-radius:0; padding:22px 0; }
  .hdsl-design-v2 .natal-toc ol { columns:2; column-gap:36px; }
  .hdsl-design-v2 .natal-toc li { break-inside:avoid; font-size:14px; }
  .hdsl-design-v2 .natal-topic { margin-top:30px; padding-top:26px; }
  .hdsl-design-v2 .natal-button { border-radius:4px; }
  .hdsl-design-v2 .natal-library-list .natal-card { padding:24px 28px; }
  .hdsl-design-v2 .natal-banner { background:var(--reader-soft); border-left-color:var(--reader-gold); }
  .hdsl-design-v2.cda-report-page .cda-reading-layout { max-width:1120px; gap:44px; }
  .hdsl-design-v2.cda-report-page .cda2-hero { background:var(--reader-card); border:1px solid var(--reader-line); border-top:2px solid var(--reader-gold); border-radius:4px; box-shadow:6px 6px 0 var(--reader-soft); }
  .hdsl-design-v2.cda-report-page .cda2-card,.hdsl-design-v2.cda-report-page .cda2-scene-card,.hdsl-design-v2 .cda-paywall,.hdsl-design-v2 .cda-plan { border-radius:4px; }
  .hdsl-design-v2.cda-report-page .cda-toc nav a[aria-current] { background:var(--reader-soft); color:var(--reader-ink); border-left-color:var(--reader-gold); }
  .hdsl-design-v2 .cda-button-primary { background:var(--reader-ink); border-color:var(--reader-ink); color:var(--reader-card); border-radius:4px; box-shadow:none; }
  .hdsl-design-v2 .cda-button-secondary { border-color:var(--reader-line); color:var(--reader-ink); border-radius:4px; }
  .hdsl-design-v2.design-cda-library .cda-checkout-main { max-width:900px; padding-top:8px; }
  .hdsl-design-v2 .cda-purchase-list li { background:var(--reader-card); border-color:var(--reader-line); border-radius:4px; }
}
@media screen and (max-width:800px) {
  .hdsl-design-v2.design-login-page .login-shell { width:calc(100% - 40px); grid-template-columns:minmax(0,1fr); gap:24px; padding-top:26px; max-width:540px; }
  .hdsl-design-v2 .design-login-intro { grid-column:1; grid-row:auto; padding:0; }
  .hdsl-design-v2 .design-login-intro .design-login-headline { font-size:29px; margin:12px 0 18px; }
  .hdsl-design-v2 .design-login-steps { display:none; }
  .hdsl-design-v2 .design-login-form,.hdsl-design-v2.design-login-page .back,.hdsl-design-v2.design-login-page .footer { grid-column:1; }
  .hdsl-design-v2.design-login-page .title { font-size:24px; }
  .hdsl-design-v2 .mypage-workspace { padding:16px 18px 88px; }
  .hdsl-design-v2 .mypage-heading-row h1 { font-size:25px; }
  .hdsl-design-v2 .mypage-own { padding:12px 14px; }
  .hdsl-design-v2 .mypage-own-shortcut { padding:8px 12px; }
  .hdsl-design-v2 .design-library-navigation { gap:0 18px; margin-bottom:16px; padding-bottom:10px; }
  .hdsl-design-v2 .design-library-navigation a { font-size:12px; }
  .hdsl-design-v2 .monthly-reader-heading h1 { font-size:23px; }
  .hdsl-design-v2.monthly-landing .monthly-hero { display:block; width:calc(100% - 40px); padding-top:26px; }
  .hdsl-design-v2.monthly-landing .monthly-hero-visual { margin-top:30px; }
  .hdsl-design-v2.monthly-landing .monthly-section { width:calc(100% - 40px); }
  .hdsl-design-v2.monthly-landing .monthly-section h2 { font-size:24px; }
  .hdsl-design-v2 .natal-reader-opening { grid-template-columns:minmax(0,1fr); gap:16px; }
  .hdsl-design-v2 .natal-reader-opening .natal-chart { max-width:520px; }
  .hdsl-design-v2 .natal-toc ol { columns:1; }
  .hdsl-design-v2.natal-reader-page h1 { font-size:27px; }
  .hdsl-design-v2.cda-report-page .cda-reading-layout { gap:16px; }
}
@media screen and (max-width:400px) {
  .hdsl-design-v2 .mypage-workspace { padding-left:10px; padding-right:10px; }
  .hdsl-design-v2 .mypage-tabs { gap:11px; }
  .hdsl-design-v2 .mypage-tab { padding-left:1px; padding-right:1px; }
  .hdsl-design-v2.design-login-page .card { padding:24px 18px; }
  .hdsl-design-v2 .design-library-navigation { gap:0 12px; }
  .hdsl-design-v2 .design-library-navigation a { font-size:11px; gap:6px; }
}
/* Restore visible labels and selected controls across the account and reading routes. */
@media screen {
  .hdsl-design-v2 {
    --reader-card:#fff;--reader-line:#b9c4d2;--reader-gold:#765820;--reader-soft:#e7edf4;
  }
  .hdsl-design-v2.design-login-page .line-btn { color:#10331e; }
  .hdsl-design-v2.design-login-page .line-note { opacity:1; }
  .hdsl-design-v2.design-login-page .divider,
  .hdsl-design-v2.design-login-page .note,
  .hdsl-design-v2.design-login-page .privacy,
  .hdsl-design-v2.design-login-page .footer { color:var(--reader-muted); }
  .hdsl-design-v2.design-login-page input,
  .hdsl-design-v2 .mypage-workspace input[type="search"],
  .hdsl-design-v2 .mypage-workspace select,
  .hdsl-design-v2 .monthly-reader-controls select,
  .hdsl-design-v2 .monthly-reader-step[href] { border-color:#78869a; }
  .hdsl-design-v2.design-login-page input:focus { outline:2px solid var(--reader-ink); border-color:var(--reader-ink); }
  .hdsl-design-v2 .mypage-account-label > span:not(.admin-flag-badge) { color:var(--reader-muted); }
  .hdsl-design-v2 .mypage-tab.is-active { background:var(--reader-ink); color:#fff; border-bottom-color:#e6c788; box-shadow:6px 0 var(--reader-ink),-6px 0 var(--reader-ink); }
  .hdsl-design-v2 .mypage-tab:focus-visible,
  .hdsl-design-v2 .mypage-group-chip:focus-visible { outline:2px solid var(--reader-ink); outline-offset:4px; }
  .hdsl-design-v2 .mypage-pin-btn { color:var(--reader-muted); }
  .hdsl-design-v2 .mypage-pin-btn.is-pinned,
  .hdsl-design-v2 .mypage-pin-btn:hover { color:var(--reader-gold); }
  .hdsl-design-v2 .mypage-name-link:hover,
  .hdsl-design-v2 .mypage-link-btn:hover { color:var(--reader-gold); }
  .hdsl-design-v2 .natal-eyebrow { color:var(--reader-gold); }
  .hdsl-design-v2 .natal-toc { background:var(--reader-soft); }
  .hdsl-design-v2 .natal-card { border-top-color:#78869a; }
  .hdsl-design-v2 .monthly-cycle-navigation a[aria-current="page"] { background:var(--reader-ink); color:#fff; border-bottom-color:#e6c788; box-shadow:6px 0 var(--reader-ink),-6px 0 var(--reader-ink); }
  .hdsl-design-v2.cda-report-page .cda-toc nav a[aria-current] { background:var(--reader-ink); color:#fff; border-left-color:#e6c788; }
  .hdsl-design-v2.cda-report-page .cda-toc nav a[aria-current] .cda-toc-index,
  .hdsl-design-v2.cda-report-page .cda-toc nav a[aria-current] .cda-toc-lock { color:#e6c788; }
  .hdsl-design-v2.cda-report-page .cda-chart-tabs button[aria-selected="true"] { background:var(--reader-ink); border-color:var(--reader-ink); color:#fff; }
}
@media screen {
  /* Chart illustrations retain their existing activation color; text uses gold-dark. */
  .hdsl-design-v2.monthly-page { --monthly-gold:#97733d; }
}
