/* Scoped styles. No selectors affect the site's existing home page. */
body.yhi-standalone { margin:0; background:#f3f5f8; }
.yhi-app, .yhi-app * { box-sizing:border-box; }
.yhi-app { --yhi-ink:#172338; --yhi-muted:#687489; --yhi-line:#dfe5ed; --yhi-accent:#246bca; color:var(--yhi-ink); background:#f3f5f8; font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; width:100%; min-height:100vh; text-align:left; }
.yhi-app h1,.yhi-app h2,.yhi-app p,.yhi-app ol { margin:0; padding:0; }
.yhi-app a { text-decoration:none; color:inherit; box-shadow:none; }
.yhi-app button,.yhi-app select,.yhi-app input { font:inherit; letter-spacing:normal; text-transform:none; }
.yhi-app button,.yhi-app select { cursor:pointer; }
.yhi-app a:focus-visible,.yhi-app button:focus-visible,.yhi-app summary:focus-visible,.yhi-app select:focus-visible,.yhi-app input:focus-visible,.yhi-app .yhi-stage:focus-visible { outline:3px solid #1670d6; outline-offset:3px; }
.yhi-app [hidden] { display:none!important; }
.yhi-app .yhi-header { display:flex; align-items:center; justify-content:space-between; gap:14px; max-width:1200px; padding:24px 28px; margin:auto; border-bottom:1px solid var(--yhi-line); }
.yhi-app .yhi-brand { display:inline-flex; gap:12px; align-items:center; font-size:17px; font-weight:750; letter-spacing:2px; }
.yhi-app .yhi-brand-mark { display:grid; place-items:center; width:38px; height:38px; border:1px solid #233451; border-radius:11px; color:white; background:#203654; font:700 23px/1 Georgia,serif; }
.yhi-app .yhi-brand small { display:block; font-size:11px; line-height:1.4; letter-spacing:1px; font-weight:500; color:var(--yhi-muted); }
.yhi-app .yhi-header-tag { font-size:12px; color:#576982; padding:5px 10px; border:1px solid #d6deea; border-radius:30px; white-space:nowrap; }
.yhi-app .yhi-main { max-width:1120px; padding:28px 28px 40px; margin:0 auto; }
.yhi-app .yhi-intro { margin:6px 0 24px; }
.yhi-app .yhi-eyebrow { font-size:11px; letter-spacing:2px; color:#687e99; font-weight:700; margin-bottom:8px; }
.yhi-app h1 { font-size:32px; line-height:1.35; font-weight:750; letter-spacing:-.6px; color:var(--yhi-ink); overflow-wrap:anywhere; }
.yhi-app .yhi-intro>p:last-child { color:var(--yhi-muted); font-size:14px; margin-top:10px; }
.yhi-app .yhi-textnav { margin-bottom:20px; border:1px solid var(--yhi-line); border-radius:13px; background:#fff; overflow:hidden; }
.yhi-app .yhi-textnav summary { cursor:pointer; padding:14px 18px; font-size:14px; font-weight:650; }
.yhi-app .yhi-textnav summary small { margin-left:12px; font-size:12px; color:var(--yhi-muted); font-weight:400; }
.yhi-app .yhi-textnav-body { border-top:1px solid var(--yhi-line); padding:18px; }
.yhi-app .yhi-search-label { display:block; font-size:12px; color:var(--yhi-muted); margin-bottom:5px; }
.yhi-app .yhi-search { padding:10px 12px; width:100%; max-width:380px; border:1px solid #cbd5e3; border-radius:7px; background:#fff; color:var(--yhi-ink); height:auto; margin-bottom:14px; }
.yhi-app .yhi-textlist { display:grid; grid-template-columns:1fr 1fr; gap:4px 24px; list-style:none; }
.yhi-app .yhi-textlist li { list-style:none; margin:0; }
.yhi-app .yhi-textlist a { display:flex; align-items:center; gap:12px; min-height:48px; padding:8px 6px; border-bottom:1px solid #edf0f5; font-size:14px; }
.yhi-app .yhi-textlist a:hover { background:#f5f8fc; }
.yhi-app .yhi-number { flex:none; width:31px; height:31px; display:grid; place-items:center; background:var(--yhi-accent); border-radius:9px; color:#fff; font-weight:700; font-size:13px; }
.yhi-app .yhi-arrow { margin-left:auto; color:#8a99ad; }
.yhi-app .yhi-no-results { color:var(--yhi-muted); padding:14px 0; }
.yhi-app .yhi-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0 0 12px; }
.yhi-app .yhi-toolbar-hint { font-size:13px; color:#44566f; font-weight:650; }
.yhi-app .yhi-toolbar-hint span { font-weight:400; color:var(--yhi-muted); }
.yhi-app .yhi-toolbar-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.yhi-app .yhi-button { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:7px 12px; border:1px solid #cdd6e2; background:#fff; color:#294361; border-radius:7px; line-height:1.4; font-size:13px; font-weight:550; box-shadow:none; }
.yhi-app .yhi-button:hover,.yhi-app .yhi-button[aria-pressed="true"] { background:#eaf2fc; border-color:#709bc7; }
.yhi-app .yhi-zoom-label { font-size:12px; color:var(--yhi-muted); display:flex; align-items:center; gap:6px; }
.yhi-app .yhi-zoom { width:auto; min-height:38px; padding:6px 30px 6px 8px; border:1px solid #cdd6e2; background-color:white; border-radius:7px; font-size:13px; color:#294361; }
.yhi-app .yhi-stage { width:100%; max-width:100%; overflow:auto; overscroll-behavior-x:contain; border:1px solid #dde1e8; border-radius:10px; background:#e9e8e3; box-shadow:0 10px 32px rgba(29,42,65,.07); }
.yhi-app .yhi-canvas { position:relative; width:100%; max-width:none; margin:0; line-height:0; isolation:isolate; }
.yhi-app img.yhi-directory-image { display:block; width:100%!important; max-width:none!important; height:auto!important; margin:0!important; padding:0!important; border:0; border-radius:0; object-fit:contain; box-shadow:none; }
.yhi-app .yhi-hotspot { position:absolute; display:block; border:2px solid transparent; border-radius:7px; margin:0; padding:0; background:transparent; z-index:2; cursor:pointer; touch-action:manipulation; -webkit-tap-highlight-color:rgba(41,101,182,.2); transition:background .14s,border-color .14s,box-shadow .14s; }
.yhi-app .yhi-hotspot:hover,.yhi-app .yhi-hotspot:focus-visible,.yhi-app .yhi-hotspot.is-linked { background:rgba(255,255,255,.22); border-color:var(--yhi-accent); box-shadow:0 0 0 2px rgba(255,255,255,.85); z-index:3; }
.yhi-app .yhi-hotspot:focus-visible { outline:2px solid #123b71; outline-offset:2px; }
.yhi-app.yhi-show-hotspots .yhi-hotspot { border-color:var(--yhi-accent); background:rgba(255,255,255,.14); }
.yhi-app .yhi-caption { margin:14px 0 0; text-align:center; font-size:12px; color:var(--yhi-muted); }
.yhi-app .yhi-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.yhi-app .yhi-footer { display:flex; justify-content:space-between; gap:16px; max-width:1064px; padding:20px 0 28px; margin:0 auto; border-top:1px solid var(--yhi-line); color:#718097; font-size:12px; }
.yhi-app .yhi-doc-topline { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--yhi-muted); font-size:12px; margin-bottom:24px; }
.yhi-app .yhi-back { font-size:14px; color:#294563; padding:7px 0; }
.yhi-app .yhi-doc-layout { display:grid; grid-template-columns:235px minmax(0,1fr); gap:28px; align-items:start; }
.yhi-app .yhi-sidebar { padding:16px 10px; background:#fff; border:1px solid var(--yhi-line); border-radius:12px; }
.yhi-app .yhi-sidebar h2 { display:flex; justify-content:space-between; padding:0 10px 12px; font-size:13px; }
.yhi-app .yhi-sidebar h2 span { color:#8290a4; font-weight:400; }
.yhi-app .yhi-sidebar nav { display:flex; flex-direction:column; gap:2px; }
.yhi-app .yhi-side-link { display:flex; gap:9px; align-items:flex-start; font-size:12px; padding:9px 8px; border-radius:7px; color:#5b677a; line-height:1.5; }
.yhi-app .yhi-side-link>span { flex:none; color:var(--yhi-accent); font-weight:750; width:19px; font-variant-numeric:tabular-nums; }
.yhi-app .yhi-side-link:hover { background:#f4f7fb; }
.yhi-app .yhi-side-link.is-active { background:#eef3f9; color:#13263f; font-weight:650; box-shadow:inset 3px 0 0 var(--yhi-accent); }
.yhi-app .yhi-document { min-width:0; }
.yhi-app .yhi-doc-hero { padding:5px 0 23px; border-bottom:1px solid var(--yhi-line); margin-bottom:22px; }
.yhi-app .yhi-doc-hero h1 { font-size:32px; }
.yhi-app .yhi-source { margin-top:14px; font-size:12px; color:#607188; }
.yhi-app .yhi-source span { display:inline-block; color:#8791a0; }
.yhi-app .yhi-page-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.yhi-app .yhi-page-tabs a { padding:8px 14px; background:#fff; border:1px solid var(--yhi-line); border-radius:7px; font-size:13px; }
.yhi-app .yhi-page-tabs a.is-active { border-color:var(--yhi-accent); box-shadow:inset 0 -2px 0 var(--yhi-accent); font-weight:650; }
.yhi-app .yhi-content-card { padding:28px; background:#fff; border:1px solid var(--yhi-line); border-top:3px solid var(--yhi-accent); border-radius:12px; box-shadow:0 8px 26px rgba(34,53,75,.035); }
.yhi-app .yhi-content-heading { display:flex; align-items:center; gap:8px; padding-bottom:20px; }
.yhi-app .yhi-status-dot { width:7px; height:7px; border-radius:50%; background:var(--yhi-accent); }
.yhi-app .yhi-content-heading h2 { font-size:13px; font-weight:650; color:#4b5c74; }
.yhi-app .yhi-page-count { margin-left:auto; font-size:11px; color:#8c99ac; }
.yhi-app .yhi-current-title { display:flex; flex-direction:column; gap:5px; border-left:3px solid var(--yhi-accent); padding:12px 16px; background:#f5f7fa; border-radius:0 7px 7px 0; margin-bottom:24px; }
.yhi-app .yhi-current-title>span { font-size:11px; color:#7b8a9d; }
.yhi-app .yhi-current-title>strong { font-size:18px; line-height:1.6; overflow-wrap:anywhere; }
.yhi-app .yhi-document-body { font-size:15px; line-height:1.95; color:#45536a; overflow-wrap:anywhere; }
.yhi-app .yhi-document-body p { margin:0 0 18px; }
.yhi-app .yhi-demo-note { margin-top:26px; padding-top:16px; border-top:1px dashed var(--yhi-line); color:#8a94a4; font-size:11px; line-height:1.7; }
.yhi-app .yhi-doc-pager { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:20px; }
.yhi-app .yhi-doc-pager a { display:flex; flex-direction:column; gap:4px; padding:15px 0; font-size:13px; overflow-wrap:anywhere; }
.yhi-app .yhi-doc-pager a:last-child { text-align:right; }
.yhi-app .yhi-doc-pager small { font-size:11px; color:#8693a7; }
.yhi-app .yhi-mobile-switch { display:none; }
.yhi-app .yhi-empty { padding:70px 20px; text-align:center; }
.yhi-app .yhi-empty p { margin:14px 0; color:var(--yhi-muted); }
.yhi-app .yhi-callout { margin:20px 0; padding:18px; border:1px solid #d7dfeb; background:#fff; border-radius:8px; font-size:14px; }
@media (max-width:760px) {
    .yhi-app .yhi-header { padding:18px 16px; }
    .yhi-app .yhi-main { padding:22px 14px 30px; }
    .yhi-app h1,.yhi-app .yhi-doc-hero h1 { font-size:27px; letter-spacing:-.3px; }
    .yhi-app .yhi-intro { margin:0 0 18px; }
    .yhi-app .yhi-intro>p:last-child { font-size:13px; }
    .yhi-app .yhi-textnav summary { padding:13px; }
    .yhi-app .yhi-textnav summary small { margin-left:8px; font-size:10px; }
    .yhi-app .yhi-textnav-body { padding:12px; }
    .yhi-app .yhi-textlist { grid-template-columns:1fr; }
    .yhi-app .yhi-toolbar { gap:9px; }
    .yhi-app .yhi-toolbar-hint { width:100%; }
    .yhi-app .yhi-toolbar-actions { width:100%; justify-content:space-between; gap:6px; }
    .yhi-app .yhi-button,.yhi-app .yhi-zoom { min-height:42px; font-size:12px; }
    .yhi-app .yhi-footer { margin:0 16px; padding:18px 0 22px; font-size:11px; }
    .yhi-app .yhi-caption { font-size:11px; }
    .yhi-app .yhi-doc-layout { display:block; }
    .yhi-app .yhi-sidebar { display:none; }
    .yhi-app .yhi-mobile-switch { display:block; margin-bottom:24px; }
    .yhi-app .yhi-mobile-switch label { display:block; font-size:11px; color:var(--yhi-muted); margin-bottom:6px; }
    .yhi-app .yhi-doc-select { width:100%; max-width:100%; min-height:44px; font-size:14px; border:1px solid #cfd8e5; border-radius:7px; padding:9px 28px 9px 10px; background-color:white; color:var(--yhi-ink); }
    .yhi-app .yhi-content-card { padding:20px 18px; }
    .yhi-app .yhi-doc-topline { margin-bottom:14px; }
    .yhi-app .yhi-document-body { font-size:14px; }
    .yhi-app .yhi-current-title>strong { font-size:17px; }
    .yhi-app .yhi-page-tabs a { min-height:44px; }
}
@media (prefers-reduced-motion:reduce) { .yhi-app .yhi-hotspot { transition:none; } }

/* v1.2.1 — page-turn directory continuation. */
.yhi-app .yhi-flip-canvas { position:relative; min-width:100%; overflow:visible; perspective:2200px; transform-style:preserve-3d; }
.yhi-app .yhi-book { position:absolute; inset:0; transform-style:preserve-3d; perspective:2200px; }
.yhi-app .yhi-sheet { position:absolute; inset:0; z-index:var(--yhi-sheet-z); transform-origin:0 50%; transform:rotateY(0deg); transform-style:preserve-3d; transition:transform .82s cubic-bezier(.22,.73,.19,1), filter .82s ease; pointer-events:none; will-change:transform; }
.yhi-app .yhi-sheet.is-current { pointer-events:auto; }
.yhi-app .yhi-sheet.is-turned { transform:rotateY(-178deg); filter:brightness(.95); pointer-events:none; }
.yhi-app .yhi-sheet-face { position:absolute; inset:0; overflow:visible; backface-visibility:hidden; -webkit-backface-visibility:hidden; background:#f8f8f6; box-shadow:0 16px 34px rgba(29,42,65,.16), 5px 0 0 rgba(255,255,255,.55), 9px 2px 0 rgba(210,211,208,.38); }
.yhi-app .yhi-sheet:not(:first-child) .yhi-sheet-face { border:1px solid #d8d9d5; }
.yhi-app .yhi-sheet.is-turned .yhi-sheet-face { box-shadow:-18px 13px 35px rgba(29,42,65,.16); }
.yhi-app .yhi-paper-page { position:absolute; inset:0; overflow:hidden; padding:5.4% 8% 6.2%; color:#151b22; line-height:1.4; background:
    radial-gradient(circle at 15% 12%,rgba(255,255,255,.95),rgba(255,255,255,0) 31%),
    linear-gradient(95deg,#f7f7f5 0%,#fbfbfa 43%,#f4f4f1 100%); }
.yhi-app .yhi-paper-page::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.22; background-image:repeating-linear-gradient(0deg,rgba(42,48,56,.03) 0,rgba(42,48,56,.03) 1px,transparent 1px,transparent 4px); }
.yhi-app .yhi-paper-kicker { position:relative; z-index:1; font-size:calc(15 * 100cqw / 1055); font-weight:700; letter-spacing:.04em; }
.yhi-app .yhi-paper-title { position:relative; z-index:1; margin-top:.8%; font-size:calc(54 * 100cqw / 1055); font-weight:800; line-height:1; letter-spacing:.01em; }
.yhi-app .yhi-paper-subtitle { position:relative; z-index:1; margin-top:1.2%; font-size:calc(22 * 100cqw / 1055); font-weight:720; }
.yhi-app .yhi-paper-rule { position:relative; z-index:1; height:2px; margin-top:1.2%; background:#1d2228; }
.yhi-app .yhi-paper-watermark { position:absolute; left:50%; top:52%; transform:translate(-50%,-50%) rotate(-8deg); color:rgba(48,60,75,.032); font:800 calc(138 * 100cqw / 1055)/1 Arial,sans-serif; letter-spacing:.09em; }
.yhi-app .yhi-paper-footer { position:absolute; left:8%; right:8%; bottom:3.4%; z-index:1; display:flex; justify-content:space-between; padding-top:1.3%; border-top:2px solid #333; font-size:calc(15 * 100cqw / 1055); font-weight:560; }
.yhi-app .yhi-page-corner { position:absolute; right:0; bottom:0; width:10%; aspect-ratio:1/1; z-index:20; border:0; padding:0; margin:0; background:linear-gradient(135deg,transparent 0 48%,rgba(224,226,228,.94) 49% 69%,rgba(255,255,255,.98) 70% 100%); color:#54647a; cursor:pointer; box-shadow:none; border-radius:0; opacity:.88; transition:width .18s ease,opacity .18s ease,filter .18s ease; }
.yhi-app .yhi-page-corner::after { content:""; position:absolute; right:0; bottom:0; width:72%; height:72%; border-right:1px solid rgba(101,112,126,.24); border-bottom:1px solid rgba(101,112,126,.24); box-shadow:-5px -4px 10px rgba(33,45,61,.08); }
.yhi-app .yhi-page-corner span { position:absolute; right:11%; bottom:10%; z-index:2; font-size:clamp(9px,1.05vw,13px); font-weight:650; white-space:nowrap; }
.yhi-app .yhi-page-corner:hover,.yhi-app .yhi-page-corner:focus-visible { width:12%; opacity:1; filter:brightness(.98); }
.yhi-app .yhi-flip-controls { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:12px; margin:14px 0 0; padding:10px 12px; border:1px solid #dce3eb; border-radius:10px; background:#fff; box-shadow:0 5px 18px rgba(31,49,72,.035); }
.yhi-app .yhi-flip-controls>button { min-height:38px; padding:7px 13px; border:1px solid #ccd6e2; border-radius:7px; background:#fff; color:#294361; font-weight:650; line-height:1.2; }
.yhi-app .yhi-flip-controls>button:hover:not(:disabled) { background:#edf4fc; border-color:#7da4ce; }
.yhi-app .yhi-flip-controls>button:disabled { opacity:.38; cursor:not-allowed; }
.yhi-app .yhi-page-indicator { justify-self:center; display:flex; align-items:baseline; gap:2px; color:#7b899b; font-size:12px; }
.yhi-app .yhi-page-indicator strong { color:#203753; font-size:16px; font-variant-numeric:tabular-nums; }
.yhi-app .yhi-page-dots { display:flex; align-items:center; justify-content:center; gap:7px; }
.yhi-app .yhi-page-dots button { width:9px; height:9px; min-width:9px; min-height:9px; padding:0; margin:0; border:0; border-radius:50%; background:#c7d0dc; box-shadow:none; }
.yhi-app .yhi-page-dots button.is-active { width:22px; border-radius:6px; background:#315f98; }
.yhi-app .yhi-flip-hint { margin:9px 0 0; text-align:center; color:#7b8799; font-size:11px; }
@media (min-width:1121px) {
    .yhi-app .yhi-paper-kicker { font-size:15px; }
    .yhi-app .yhi-paper-title { font-size:54px; }
    .yhi-app .yhi-paper-subtitle { font-size:22px; }
    .yhi-app .yhi-paper-footer { font-size:15px; }
    .yhi-app .yhi-paper-watermark { font-size:138px; }
}
@media (max-width:760px) {
    .yhi-app .yhi-flip-controls { grid-template-columns:auto 1fr auto; gap:7px; padding:8px; }
    .yhi-app .yhi-page-dots { grid-column:1 / -1; grid-row:2; }
    .yhi-app .yhi-flip-controls>button { min-height:42px; padding:7px 11px; }
    .yhi-app .yhi-page-corner { width:14%; }
    .yhi-app .yhi-page-corner:hover,.yhi-app .yhi-page-corner:focus-visible { width:16%; }
}
@media (prefers-reduced-motion:reduce) {
    .yhi-app .yhi-sheet { transition:none; }
    .yhi-app .yhi-page-corner { transition:none; }
}
