/* Shared layout and typography. */
.hlj-document{scrollbar-gutter:stable}
.hlj-site{--paper:#f5f4ef;--card:#fffefb;--ink:#24312f;--green:#185d4e;--muted:#596b62;--line:#d6ddd2;margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 "Yu Gothic UI",Meiryo,sans-serif}
:where(.hlj-site) *{box-sizing:border-box}
:where(.hlj-site) [hidden]{display:none!important}
:where(.hlj-site) a{color:var(--green);text-underline-offset:.22em}
:where(.hlj-site) a:hover{text-decoration-thickness:2px}
:where(.hlj-site) a:focus-visible,:where(.hlj-site) button:focus-visible{outline:3px solid #a84f24;outline-offset:4px}
:where(.hlj-site) p,:where(.hlj-site) h1,:where(.hlj-site) h2,:where(.hlj-site) h3{overflow-wrap:anywhere}
:where(.hlj-site) p{margin:0 0 16px}
:where(.hlj-site) h1{font-size:36px;line-height:1.5;margin:0 0 12px}
:where(.hlj-site) h2{font-size:23px;line-height:1.5;margin:0 0 18px}
:where(.hlj-site) h3{font-size:23px;line-height:1.5;margin:0 0 10px}
:where(.hlj-site) ul{margin:0 0 16px;padding-left:24px}
.hlj-review-strip{box-sizing:border-box;background:#e8e4d7;color:#596b62;text-align:center;font:11px/1.85 "Yu Gothic UI",Meiryo,sans-serif;padding:4px;margin:0}
.hlj-header,.hlj-footer,.hlj-breadcrumbs,.hlj-page{box-sizing:border-box;width:min(1080px,calc(100% - 64px));margin-inline:auto;font-family:"Yu Gothic UI",Meiryo,sans-serif;color:#24312f}
.hlj-page{padding-bottom:32px}.hlj-home{padding-top:28px}.hlj-reading{max-width:840px}
.hlj-page-intro{margin:0 0 25px;padding:0}
.hlj-page-intro h1{font-size:36px;font-weight:700;line-height:1.5;letter-spacing:normal;margin:0 0 12px;overflow-wrap:anywhere}
.hlj-page-intro .hlj-description{max-width:840px;font-size:16px;line-height:1.85;color:#596b62;margin:0}
.hlj-page-intro .hlj-page-meta{font-size:13px;color:#596b62;margin:0 0 12px}
.hlj-tag{display:inline-block;margin-left:14px;padding:1px 9px;background:#e7ece2;color:#3d5747;border-radius:2px}
.hlj-back{display:inline-block;font-size:13px;margin-top:28px;text-underline-offset:.22em}
.hlj-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.hlj-card{display:flex;flex-direction:column;min-width:0;padding:24px;background:var(--card);border:1px solid var(--line);border-top:3px solid #789682;color:var(--ink);text-decoration:none}
.hlj-card:hover{border-color:var(--green);background:#edf2e9}
.hlj-card h2,.hlj-card h3{font-size:23px;line-height:1.5;color:var(--green);margin:0 0 10px}
.hlj-card p{font-size:15px}.hlj-card p:last-child{margin-bottom:0}
.hlj-panel{background:var(--card);border:1px solid var(--line);border-top:3px solid #789682;padding:24px;margin:0 0 28px}
.hlj-panel>:last-child{margin-bottom:0}
.hlj-list-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin:0 0 18px}
.hlj-list-heading h2{margin:0}.hlj-list-heading p{margin:0;color:var(--muted);font-size:13px}
.hlj-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid #d6ddd2}
.hlj-header .hlj-brand{font:24px/1.4 Georgia,serif;letter-spacing:normal;color:#24312f;text-decoration:none}.hlj-brand span{color:#185d4e}
.hlj-navigation{display:flex;flex-wrap:wrap;gap:8px 18px;font:13px/1.85 "Yu Gothic UI",Meiryo,sans-serif}
.hlj-header .hlj-navigation a,.hlj-breadcrumbs a{color:#185d4e;text-underline-offset:.22em}
.hlj-breadcrumbs{margin-block:24px;font-size:12px;line-height:1.85}.hlj-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 12px;list-style:none;margin:0;padding:0}.hlj-breadcrumbs li{margin:0;padding:0;color:#596b62;overflow-wrap:anywhere}.hlj-breadcrumbs li+li::before{content:"/";display:inline-block;margin-right:12px;color:#596b62}
.hlj-footer{display:flex;justify-content:space-between;align-items:baseline;gap:20px;background:transparent;border:0;border-top:1px solid #d6ddd2;padding:23px 0;margin-top:32px;color:#596b62;font-size:13px;line-height:1.85;text-align:left}.hlj-footer>span:last-child{font-size:11px;text-align:right}
.hlj-skip{position:absolute;top:-80px;left:12px;background:white;padding:8px;z-index:3}.hlj-skip:focus{top:0}.hlj-header a:focus-visible,.hlj-breadcrumbs a:focus-visible,.hlj-skip:focus-visible{outline:3px solid #a84f24;outline-offset:4px}
.hlj-site-note{color:#596b62;text-align:right;font-size:12px;line-height:1.85;margin:28px 0 0}
.hlj-footer nav{margin-left:auto}.hlj-footer a{color:#185d4e;text-underline-offset:.22em}.hlj-footer a:focus-visible{outline:3px solid #a84f24;outline-offset:4px}
@media(max-width:720px){
  .hlj-header,.hlj-footer,.hlj-breadcrumbs,.hlj-page{width:calc(100% - 36px)}
  :where(.hlj-site) h1,.hlj-page-intro h1{font-size:29px}
  :where(.hlj-site) h2,:where(.hlj-site) h3,.hlj-card h2,.hlj-card h3{font-size:22px}
  .hlj-page-intro .hlj-description{font-size:14px}.hlj-card-grid{grid-template-columns:1fr}.hlj-card,.hlj-panel{padding:20px}
  .hlj-header{flex-wrap:wrap;padding-block:18px;gap:10px}.hlj-header .hlj-brand{font-size:22px}.hlj-footer{flex-wrap:wrap;gap:5px}.hlj-footer>span:last-child{margin-left:auto}
}

.hlj-site,.hlj-header,.hlj-footer,.hlj-breadcrumbs,.hlj-page{font-family:system-ui,"Segoe UI",Arial,sans-serif}
