html{scroll-behavior:smooth}body{overflow-wrap:anywhere}a:hover{text-decoration:underline}button{cursor:pointer;border:0}input,select,textarea{border:var(--border);border-radius:8px;padding:10px 14px;background:var(--color-surface);color:var(--color-text);min-width:0}textarea{font:inherit}a,button,input,select{touch-action:manipulation}.screen-reader-text,.skip-link:not(:focus){clip-path:inset(50%);height:1px;width:1px;position:absolute;overflow:hidden;white-space:nowrap}.skip-link:focus{position:fixed;z-index:9999;top:8px;left:8px;background:var(--color-surface);padding:16px}.site-header{border-image:linear-gradient(90deg,var(--color-coral) 55%,var(--color-secondary) 55%) 1}.header-inner{min-height:80px;display:flex;align-items:center;gap:24px}.brand{flex-shrink:0;position:relative;padding-left:18px;line-height:1.3}.brand:before{content:'';position:absolute;left:0;top:4px;width:5px;height:32px;background:var(--color-coral)}.brand-name{font-size:20px;font-weight:700;text-decoration:none}.brand-tagline{display:block;color:#D9CDDE;font-size:10px;margin-top:3px}.custom-logo{width:auto;max-width:240px;max-height:56px}.mobile-logo{display:none}.desktop-nav{margin-left:auto;flex:1;justify-content:flex-end}.desktop-nav ul{display:flex;align-items:center;justify-content:space-between;list-style:none;gap:22px;margin:0;padding:0}.desktop-nav a{font-size:14px;text-decoration:none}.desktop-nav .menu-item{position:relative}.desktop-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:180px;background:var(--color-navy);padding:16px;z-index:10;box-shadow:var(--shadow-menu)}.desktop-nav li:hover>.sub-menu,.desktop-nav li:focus-within>.sub-menu{display:block}.desktop-nav .sub-menu a{display:block;padding:8px}.current-menu-item>a{border-bottom:2px solid var(--color-coral)}.header-search{background:var(--color-surface-light);color:var(--color-text)!important;min-width:100px}.mobile-nav-trigger{margin-left:auto;align-items:center;justify-content:center;background:var(--color-surface-light);padding:8px 16px;border-radius:8px;font-size:15px;color:var(--color-text)}.compact-search{margin-top:16px}.search-form{display:flex;position:relative;background:var(--color-surface);border:var(--border);border-radius:8px;padding:5px;gap:8px;min-height:56px}.search-form input{flex:1;width:100%;border:0;padding:0 10px;font-size:14px;min-height:44px;background:transparent}.search-form button{display:grid;place-items:center;border-radius:6px;min-width:44px;min-height:44px;padding:0;background:var(--color-accent);color:#fff}.menu-open{overflow:hidden}dialog{border:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:24px;background:var(--color-navy);color:#fff;overflow:auto}dialog::backdrop{background:#211d36cc}dialog .menu-close{display:block;margin-left:auto;padding:8px 24px;border-radius:8px}dialog ul{list-style:none;padding-left:0}dialog .sub-menu{padding-left:24px}dialog a{display:block;padding:12px;color:#fff}dialog .search-form{margin-top:32px}.home-main{padding-top:40px}.hero{min-height:288px;background:var(--color-navy) url('../images/hero-desktop.svg') center/100% 100% no-repeat;border-radius:8px;position:relative;padding:24px;overflow:hidden}.hero-copy{position:relative;max-width:650px;color:#fff}.hero-label{font-size:13px;font-weight:700;color:var(--color-pink);margin:0 0 20px}.hero h1{font-size:36px;line-height:1.34;margin:0 0 18px}.hero-copy>p:not(.hero-label){font-size:15px;line-height:1.8;margin:0 0 24px;color:#E3DAE9}.hero:after{content:'';position:absolute;left:24px;bottom:8px;width:100px;height:3px;background:linear-gradient(90deg,var(--color-coral) 64%,transparent 64% 68%,var(--color-cyan) 68%)}.hero-cta{border-radius:6px}.home-search{margin:40px 0 24px}.home-section{margin:40px 0}.purpose-section{margin-top:24px}.section-heading{font-size:24px;margin:0 0 32px;padding-block:9px;border-bottom:0}.section-heading:after{max-width:224px;width:45%;background:linear-gradient(90deg,var(--color-coral) 71.4%,var(--color-secondary) 71.4%)}.purpose-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px}.purpose-grid li{position:relative;background:var(--color-surface);border:var(--border);border-radius:8px;min-height:80px}.purpose-grid li:after{content:'';position:absolute;right:16px;top:0;width:24px;height:3px;background:var(--color-coral)}.purpose-grid li:nth-child(even):after{background:var(--color-secondary)}.purpose-grid a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:80px;padding:12px 16px;color:var(--color-text);font-size:14px;font-weight:700;text-decoration:none;line-height:1.6}.purpose-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:4px;background:var(--color-navy);color:var(--color-coral);font-size:18px;margin-bottom:6px}.purpose-grid .sub-menu{display:none}.article-card{padding:8px;display:flex;flex-direction:column;position:relative;overflow:hidden}.article-card .card-image{display:block;width:100%;border-radius:4px 4px 0 0}.card-content{padding:12px 8px 0;display:flex;flex-direction:column;align-items:flex-start;flex:1}.card-title{font-size:17px;line-height:1.7;margin:8px 0 24px;font-weight:700}.card-title a{color:var(--color-text);text-decoration:none}.card-title a:after{content:'';position:absolute;inset:0}.card-title a:focus-visible:after{outline:3px solid var(--color-accent);outline-offset:-4px}.card-date{font-size:12px;color:var(--color-text-muted);margin:auto 0 0;line-height:1.8}.new{font-size:10px;font-weight:700;color:var(--color-primary)}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.link-rows{list-style:none;counter-reset:rows;padding:0;margin:24px 0;display:grid;gap:16px}.link-rows li{counter-increment:rows;background:var(--color-surface);border:var(--border);border-radius:8px}.link-rows a{min-height:64px;display:flex;align-items:center;gap:16px;padding:12px 16px;color:var(--color-text);text-decoration:none;font-size:16px}.link-rows a:before{content:counter(rows,decimal-leading-zero);background:var(--color-navy);color:#fff;border-radius:4px;min-width:28px;line-height:28px;text-align:center;font-size:12px}.panel{padding:24px;background:var(--color-surface);border:var(--border);border-radius:8px;margin-bottom:24px}.panel>:first-child{margin-top:0}.panel>:last-child{margin-bottom:0}.faq{padding:16px 24px;background:var(--color-surface);border:var(--border);border-radius:8px;margin:16px 0}summary{cursor:pointer;min-height:44px;align-content:center;font-weight:700}summary:focus-visible{outline:3px solid var(--color-accent)}.bottom-search{margin:48px 0}.site-footer{background:var(--color-surface);margin-top:64px;padding:40px 0;color:var(--color-text);font-size:14px}.footer-brand{font-weight:700;font-size:20px;margin:0 0 32px}.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-bottom:56px}.footer-grid h2{font-size:16px;margin:0 0 12px}.footer-grid ul{list-style:none;padding:0;margin:0}.footer-grid a{color:var(--color-text);line-height:2}.site-footer small{font-size:12px}.muted{color:var(--color-text-muted);font-size:14px}.breadcrumbs{font-size:12px;color:var(--color-text-muted);margin:32px 0 24px}.breadcrumbs ol{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}.breadcrumbs li+li:before{content:'/';margin-right:8px}.archive-main,.single-main,.database-main,.page-main,.error-main{padding-bottom:24px}.archive-main h1{margin:24px 0 32px}.archive-description{margin-bottom:24px}.result-count{font-size:14px;margin:24px 0}.filter-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px;margin:24px 0}.filter-panel label{font-size:14px;font-weight:700;display:grid;gap:6px}.filter-keyword{grid-column:1/-1}.filter-panel input,.filter-panel select{width:100%;font-weight:400}.filter-panel select{background:var(--color-surface-light)}.filter-actions{grid-column:1/-1;display:flex;gap:16px;flex-wrap:wrap}.secondary{background:var(--color-surface-light);color:var(--color-text);border:var(--border)}.secondary:hover{background:var(--color-border)}.pagination,.posts-navigation,.post-navigation{margin:40px 0}.nav-links{display:flex;gap:12px;flex-wrap:wrap}.page-numbers{display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:6px 14px;border:var(--border);border-radius:6px;text-decoration:none;color:var(--color-text);background:var(--color-surface)}.page-numbers.current{background:var(--color-primary);color:#fff}.article-heading{margin-bottom:32px}.article-heading h1{margin:12px 0 16px;max-width:1100px}.article-heading>.post-categories{display:flex;list-style:none;gap:8px}.article-heading>a{display:inline-block;background:var(--color-primary);color:#fff;font-size:12px;padding:0 8px;border-radius:4px}.feature-image{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px;margin-bottom:24px}.article-body{width:100%}.article-body>h2{margin:40px 0 24px;font-size:23px}.article-body h3{margin:32px 0 16px}.article-body h4{font-size:18px}.article-body img{height:auto}.notice-box{background:var(--color-surface);border:var(--border);border-top:3px solid var(--color-accent);padding:24px;margin:24px 0;border-radius:8px}.notice-box p{margin:12px 0 0}.toc{background:var(--color-surface);border:var(--border);border-radius:8px;padding:16px 24px;margin:24px 0}.toc ol{padding-left:24px;margin:8px 0;font-size:15px}.toc li{padding:4px 0}.toc .toc-h3{margin-left:20px;font-size:14px}.toc a[aria-current]{font-weight:700;color:var(--color-primary)}.sidebar-toc{margin:0}.sidebar h2{font-size:18px}.related-section{margin:48px 0}.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr}.nav-previous,.nav-next{background:var(--color-surface);border:var(--border);border-radius:8px;padding:16px}.share-links{display:flex;gap:16px;flex-wrap:wrap;margin:32px 0}.copy-status{font-size:14px}.database-overview{display:grid;grid-template-columns:2fr 1fr;gap:32px;margin:24px 0 40px}.database-overview .db-image{object-fit:contain}.database-overview .spec-row{display:block}.database-overview .spec-row dd{margin-top:8px}.database-main section{margin:40px 0}.database-content{max-width:100%;margin:32px 0}.map-image{width:100%;max-height:500px;object-fit:contain;background:var(--color-surface)}.table-wrap,.wp-block-table{overflow-x:auto;margin:24px 0}.data-table,.wp-block-table table{border-collapse:collapse;width:100%;font-size:16px;background:var(--color-surface)}.data-table caption{font-size:14px;color:var(--color-text-muted);text-align:left;padding:8px}.data-table th,.data-table td,.wp-block-table th,.wp-block-table td{padding:16px;border:var(--border);text-align:left}.data-table thead,.wp-block-table thead{background:var(--color-surface-light)}.data-table th{font-weight:700}.data-table tbody tr:nth-child(even){background:var(--color-surface-light)}.ad-slot{position:relative;min-height:var(--ad-height,280px);margin:32px 0;background:transparent;text-align:center;overflow:hidden}.ad-label{display:block;font-size:10px;color:var(--color-text-muted);padding:4px}.ad-mount{max-width:100%;min-width:0}.ad-slot template{display:none}.ad-device-desktop{display:none}.spoiler{background:var(--color-surface);border:var(--border);border-radius:8px;padding:16px;margin-bottom:24px}.spoiler>summary{margin-bottom:16px}.error-main{min-height:570px}.error-code{font-size:64px;color:var(--color-primary);line-height:1.1}.page-main>.article-body{margin:auto}.is-style-g6-point,.is-style-g6-warning,.is-style-g6-tip,.is-style-g6-conclusion,.is-style-g6-steps,.is-style-g6-spec,.is-style-g6-qa{background:var(--color-surface);border:var(--border);border-top:3px solid var(--color-accent);border-radius:8px;padding:24px;margin:24px 0}.is-style-g6-warning{border-top-color:var(--color-warning)}.is-style-g6-conclusion{border-top-color:var(--color-primary)}.is-style-g6-steps ol{counter-reset:step;list-style:none;padding:0}.is-style-g6-steps li{counter-increment:step;padding:16px;border-bottom:var(--border)}.is-style-g6-steps li:before{content:counter(step);display:inline-block;background:var(--color-primary);color:#fff;border-radius:4px;padding:0 10px;margin-right:16px}.wp-block-button__link{border-radius:8px;background:var(--color-primary);min-height:48px}.comment-form input:not([type=checkbox]),.comment-form textarea{width:100%}.comment-list{padding-left:24px}.comment-body{margin-bottom:24px}.alignwide{width:100%}.alignfull{margin-inline:0}.wp-caption{max-width:100%}
@media(min-width:1200px){.compact-search{display:none}.ad-device-desktop{display:block}.ad-device-mobile{display:none}}
@media(min-width:600px) and (max-width:1199px){.hero{background-image:url('../images/hero-tablet.svg')}.header-search{display:none}.home-main{padding-top:32px}.home-search{display:none}.filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.database-overview{grid-template-columns:1fr}.database-overview .spec-row{display:grid;grid-template-columns:40% 60%}.database-overview .spec-row dd{margin:0}.purpose-grid{gap:16px}.purpose-grid a{padding:12px;font-size:13px}}
@media(max-width:599px){.header-inner{gap:8px}.brand-name{font-size:20px}.brand{padding-left:13px;flex-shrink:1}.brand-tagline{font-size:10px}.mobile-nav-trigger{font-size:13px;padding:8px 12px;flex-shrink:0}.header-search{display:none}.mobile-logo{display:block}.mobile-logo img{max-width:170px;max-height:48px;width:auto}.brand:has(.mobile-logo)>.brand-name,.brand:has(.mobile-logo)>.desktop-logo{display:none}.home-main{padding-top:32px}.hero{min-height:310px;background-image:url('../images/hero-mobile.svg');padding:24px}.hero-copy{max-width:85%}.hero-copy h1{font-size:28px;line-height:1.55;background:var(--color-navy);margin:18px 0 10px;padding-bottom:4px}.hero-label{font-size:12px;margin-bottom:0}.hero-copy>p:not(.hero-label){font-size:14px;background:var(--color-navy);margin-bottom:32px}.hero-cta{font-size:14px;padding:8px 16px;white-space:normal}.hero:after{left:24px}.home-search{display:none}.home-section{margin:32px 0}.section-heading{font-size:21px;margin-bottom:24px;min-height:54px;padding-top:10px}.purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.purpose-grid a{min-height:80px;font-size:14px}.card-content{padding:0}.card.article-card{align-items:start}.article-card .card-image{height:78px;border-radius:4px}.article-card .card-title{margin:6px 0 16px}.category-badge{font-size:10px;line-height:22px}.card.article-card:nth-child(even){border-left-color:var(--color-secondary)}.two-columns{grid-template-columns:1fr}.link-rows a{font-size:15px;min-height:64px}.footer-grid{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.site-footer{margin-top:40px;padding:32px 0}.footer-brand{font-size:20px}.filter-panel{grid-template-columns:1fr;padding:16px}.filter-actions{gap:8px}.filter-actions .button{padding-inline:16px}.article-heading h1{font-size:26px}.article-body>h2{font-size:22px}.article-body{max-width:none}.notice-box,.panel,.toc{padding:16px}.database-overview{grid-template-columns:1fr;gap:8px}.database-overview .spec-row{display:block}.data-table th,.data-table td{padding:12px;font-size:14px}.post-navigation .nav-links{grid-template-columns:1fr}.breadcrumbs{margin-top:24px}.is-style-g6-comparison table thead{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.is-style-g6-comparison table tbody,.is-style-g6-comparison table tr,.is-style-g6-comparison table td{display:block}.is-style-g6-comparison tr{border:var(--border);margin-bottom:16px;border-radius:8px}.is-style-g6-comparison td:before{content:attr(data-label);display:block;font-size:12px;color:var(--color-text-muted);font-weight:700}.is-style-g6-comparison td{border:0;border-bottom:var(--border)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Configurable brand: header space adapts without changing the site palette. */
.g6-brand{min-width:0;max-width:338px;flex-shrink:1;padding-block:8px}.g6-brand:before{background:var(--g6-logo-accent,#FF977F);top:50%;transform:translateY(-50%)}.g6-brand-no-mark{padding-left:0}.g6-brand-no-mark:before{display:none}.g6-text-logo{display:block;color:var(--g6-logo-color,#fff)!important;font-size:var(--g6-logo-size,20px);font-weight:var(--g6-logo-weight,700);line-height:1.3;overflow-wrap:anywhere}.g6-logo-main,.g6-logo-sub{display:block}.g6-logo-sub{font-size:var(--g6-logo-sub-size,13px);margin-top:3px}.g6-brand .custom-logo{max-width:min(100%,var(--g6-logo-width,240px));max-height:var(--g6-logo-height,56px);width:auto;height:auto;object-fit:contain}.g6-brand .custom-logo-link{display:block}.g6-brand .brand-tagline{white-space:normal}.header-inner>.desktop-nav{min-width:0}.header-inner>.header-search{flex-shrink:0}
@media(max-width:599px){.g6-brand{max-width:calc(100% - 96px)}.g6-text-logo{font-size:var(--g6-logo-mobile-size,18px)}.g6-brand .mobile-logo img,.g6-brand .custom-logo{max-width:min(100%,var(--g6-logo-mobile-width,170px));max-height:var(--g6-logo-mobile-height,48px);height:auto;width:auto;object-fit:contain}}

/* Article-only home: isolated layout, no inline image dimensions. */
.g6-post-preview{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin:0 0 24px;padding:24px;background:var(--color-surface,#fff);border:var(--border);border-radius:8px;overflow:hidden;min-width:0}
.g6-post-preview.has-thumbnail{grid-template-columns:240px minmax(0,1fr)}
.g6-post-preview-media{display:block;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:4px;align-self:start}
.g6-post-preview-media img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;margin:0}
.g6-post-preview-body{min-width:0;overflow-wrap:anywhere}
.g6-post-preview-body h2{font-size:22px;line-height:1.6;margin:0 0 8px}
.g6-post-preview-date{font-size:13px;color:var(--color-text-muted);margin:0 0 12px}
.g6-post-preview-excerpt{font-size:15px;line-height:1.8}
.g6-post-preview-excerpt p{margin:0 0 16px}
.g6-post-preview-more{display:inline-block;font-weight:700;padding-block:8px}
@media(max-width:599px){.g6-post-preview,.g6-post-preview.has-thumbnail{grid-template-columns:minmax(0,1fr);padding:16px;gap:16px}.g6-post-preview-body h2{font-size:19px}.g6-post-preview-excerpt{font-size:14px}}

/* Numbered pagination: shared by archives and article-only home. */
.pagination{margin:40px 0;clear:both}
.pagination .nav-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px}
.pagination .page-numbers{min-width:46px;min-height:46px;padding:8px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;transition:background .15s,border-color .15s,transform .15s}
.pagination a.page-numbers:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 3px 0 var(--color-primary)}
.pagination .page-numbers.current{background:var(--color-primary);border-color:var(--color-primary);color:var(--g6-on-primary,#fff);box-shadow:0 3px 0 var(--color-secondary)}
.pagination .page-numbers.dots{min-width:24px;padding-inline:2px;background:transparent;border-color:transparent;box-shadow:none;color:var(--color-text-muted)}
.pagination .prev,.pagination .next{padding-inline:18px}
.pagination a:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}
@media(max-width:599px){.pagination .nav-links{gap:6px}.pagination .page-numbers{min-width:44px;min-height:44px;padding:8px 10px;font-size:13px}.pagination .prev,.pagination .next{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){.pagination .page-numbers{transition:none}.pagination a.page-numbers:hover{transform:none}}


/* v1.0.8: Article tables - responsive scroll without changing pasted HTML. */
.article-body .g6-table-scroll,
.article-body .wp-block-table:not(.is-style-g6-comparison) {
  max-width:100%; min-width:0; overflow-x:auto; overflow-y:hidden;
  margin:28px 0 8px; border:1px solid var(--color-border);
  border-radius:10px; background:var(--color-surface);
  box-shadow:0 5px 18px rgb(33 29 54 / 5%);
  -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain;
  scrollbar-width:thin; scrollbar-color:var(--color-secondary) var(--color-surface-light);
}
.article-body .g6-table-scroll:focus-visible,
.article-body .wp-block-table:not(.is-style-g6-comparison):focus-visible {
  outline:3px solid var(--color-accent); outline-offset:3px;
}
.article-body .g6-table-scroll > table,
.article-body .wp-block-table:not(.is-style-g6-comparison) > table {
  width:100%; min-width:570px; margin:0; border:0;
  border-collapse:separate; border-spacing:0;
  table-layout:auto; color:var(--color-text); font-size:14px; line-height:1.7;
  background:var(--color-surface);
}
.article-body .g6-table-scroll th,
.article-body .g6-table-scroll td,
.article-body .wp-block-table:not(.is-style-g6-comparison) th,
.article-body .wp-block-table:not(.is-style-g6-comparison) td {
  box-sizing:border-box; vertical-align:middle; text-align:left;
  padding:13px 17px; border:0;
  border-right:1px solid var(--color-border);
  border-bottom:1px solid var(--color-border);
  overflow-wrap:normal; word-break:normal;
}
.article-body .g6-table-scroll tr > :last-child,
.article-body .wp-block-table:not(.is-style-g6-comparison) tr > :last-child {border-right:0}
.article-body .g6-table-scroll tbody tr:last-child > *,
.article-body .wp-block-table:not(.is-style-g6-comparison) tbody tr:last-child > * {border-bottom:0}
.article-body .g6-table-scroll thead th,
.article-body .wp-block-table:not(.is-style-g6-comparison) thead th {
  background:var(--color-navy);color:#fff;font-weight:700;white-space:nowrap;
  border-right:1px solid rgb(255 255 255 / 20%);
  border-bottom:3px solid var(--color-coral);
}
.article-body .g6-table-scroll thead th:last-child,
.article-body .wp-block-table:not(.is-style-g6-comparison) thead th:last-child {border-right:0}
.article-body .g6-table-scroll tbody th[scope="row"],
.article-body .wp-block-table:not(.is-style-g6-comparison) tbody th[scope="row"] {
  font-weight:700;background:var(--color-surface-light);color:var(--color-text);
}
.article-body .g6-table-scroll tbody tr:nth-child(even) td,
.article-body .wp-block-table:not(.is-style-g6-comparison) tbody tr:nth-child(even) td {background:#FAF8FA}
.article-body .g6-table-scroll tbody tr:hover td,
.article-body .wp-block-table:not(.is-style-g6-comparison) tbody tr:hover td {background:#F3EDF4}
.article-body .g6-table-scroll caption,
.article-body .wp-block-table:not(.is-style-g6-comparison) caption {
  caption-side:top;text-align:left;padding:12px 16px;font-size:13px;
  font-weight:700;color:var(--color-text-muted);background:var(--color-surface);
}
.article-body .g6-table-scroll-hint {
  display:none; margin:4px 0 23px; text-align:right;
  font-size:12px;line-height:1.5;font-weight:700;color:var(--color-text-muted);
}
@media(max-width:767px){
  .article-body .g6-table-scroll,
  .article-body .wp-block-table:not(.is-style-g6-comparison){margin-top:20px;border-radius:8px}
  .article-body .g6-table-scroll > table,
  .article-body .wp-block-table:not(.is-style-g6-comparison) > table {min-width:560px;font-size:13px}
  .article-body .g6-table-scroll th,.article-body .g6-table-scroll td,
  .article-body .wp-block-table:not(.is-style-g6-comparison) th,
  .article-body .wp-block-table:not(.is-style-g6-comparison) td {padding:11px 13px}
  .article-body .g6-table-scroll-hint[data-overflow="true"] {display:block}
}
@media(prefers-reduced-motion:reduce){.article-body .g6-table-scroll{scroll-behavior:auto}}


/* v1.0.9: Readable long-form article typography.
   Scoped to actual article content; leaves cards, navigation, archives and
   the v1.0.8 scrollable comparison tables in place. */
.single-main .article-layout,
.single-main .article-wide {min-width:0;}
.single-main .article-wide {max-width:820px;margin-inline:auto;}
.single-main .article-layout > .article-body,
.single-main .article-wide > .article-body,
.page-main > .article-body {
  min-width:0;
  width:100%;
  max-width:none;
  background:#fff;
  border:1px solid #E8E1E9;
  border-radius:14px;
  padding:34px clamp(25px,3.1vw,42px) 42px;
  box-shadow:0 7px 28px rgb(33 29 54 / 4%);
  color:#252339;
  font-size:17px;
  font-weight:400;
  line-height:1.94;
  letter-spacing:.012em;
  text-align:left;
  font-feature-settings:'palt' 0;
  line-break:strict;
}
.single-main .article-body > p,
.page-main > .article-body > p {
  margin:0 0 1.48em;
  line-height:inherit;
}
.single-main .article-body > p:last-child,
.page-main > .article-body > p:last-child {margin-bottom:0;}
.single-main .article-body > h2,
.page-main > .article-body > h2 {
  margin:3.15rem 0 1.45rem;
  padding:15px 19px;
  border-left:5px solid var(--color-coral);
  background:#F2EEF3;
  color:#211D36;
  border-radius:0 8px 8px 0;
  font-size:clamp(21px,2.1vw,24px);
  font-weight:750;
  line-height:1.55;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
}
.single-main .article-body > h3,
.page-main > .article-body > h3 {
  margin:2.55rem 0 1.15rem;
  padding:0 0 9px 1px;
  border-bottom:2px solid #E9E1E9;
  color:#2A2540;
  font-size:20px;
  font-weight:750;
  line-height:1.6;
}
.single-main .article-body > h4,
.page-main > .article-body > h4 {
  margin:2rem 0 1rem;
  color:#2A2540;
  font-size:18px;
  line-height:1.65;
}
.single-main .article-body > h2:first-child,
.page-main > .article-body > h2:first-child {margin-top:0;}
.single-main .article-body > h2 + h3,
.page-main > .article-body > h2 + h3 {margin-top:1.65rem;}
.single-main .article-body > ul,
.single-main .article-body > ol,
.page-main > .article-body > ul,
.page-main > .article-body > ol {
  padding-left:1.65em;
  margin:1.1rem 0 1.65rem;
}
.single-main .article-body > ul li,
.single-main .article-body > ol li,
.page-main > .article-body > ul li,
.page-main > .article-body > ol li {margin:0 0 .75em;padding-left:.14em;line-height:1.85;}
.single-main .article-body > ul li::marker,
.page-main > .article-body > ul li::marker {color:var(--color-primary);}
.single-main .article-body strong,
.page-main > .article-body strong {font-weight:700;}
.single-main .article-body > blockquote,
.page-main > .article-body > blockquote {
  margin:1.5rem 0 1.8rem;
  padding:13px 20px;
  border-left:4px solid var(--color-secondary);
  border-radius:0 8px 8px 0;
  background:#F7F4F8;
}
.single-main .article-body > blockquote p,
.page-main > .article-body > blockquote p {margin:.35em 0;}
.single-main .article-body > p > a,
.page-main > .article-body > p > a {
  text-decoration-thickness:1px;
  text-underline-offset:.25em;
}
.single-main .article-body > .g6-table-scroll,
.single-main .article-body > .wp-block-table,
.page-main > .article-body > .g6-table-scroll,
.page-main > .article-body > .wp-block-table {margin-block:1.65rem 1.9rem;}
.single-main .article-body > p:has(+ .g6-table-scroll),
.page-main > .article-body > p:has(+ .g6-table-scroll) {margin-bottom:.85em;}
.single-main .article-body > .notice-box,
.single-main .article-body > .toc,
.single-main .article-body > .panel {line-height:1.8;}
.single-main .article-heading h1 {
  font-size:clamp(27px,2.8vw,35px);
  line-height:1.55;
  letter-spacing:.006em;
  max-width:900px;
  text-wrap:pretty;
}
@media(min-width:1200px) {
  /* Older fixed 800+352+48px columns overflowed a 1104px container. */
  .single-main .article-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(260px,300px);
    gap:32px;
    align-items:start;
  }
  .single-main .article-layout > .sidebar {min-width:0;}
}
@media(max-width:767px) {
  .single-main .article-layout > .article-body,
  .single-main .article-wide > .article-body,
  .page-main > .article-body {
    padding:25px 18px 30px;
    border-radius:11px;
    font-size:16px;
    line-height:1.94;
    letter-spacing:.008em;
  }
  .single-main .article-body > p,
  .page-main > .article-body > p {margin-bottom:1.42em;}
  .single-main .article-body > h2,
  .page-main > .article-body > h2 {
    margin:2.7rem 0 1.22rem;
    padding:12px 13px;
    font-size:20px;
    line-height:1.58;
  }
  .single-main .article-body > h3,
  .page-main > .article-body > h3 {
    font-size:18px;
    margin:2.1rem 0 1rem;
    line-height:1.58;
  }
  .single-main .article-heading h1 {font-size:26px;line-height:1.55;}
}
@media(max-width:359px) {
  .single-main .article-layout > .article-body,
  .single-main .article-wide > .article-body,
  .page-main > .article-body {padding-inline:14px;}
}


/* GTA6攻略ノート v1.0.10: archive & card polish; all theme colors remain configurable. */
/* Main article always retains at least the available column width; widen sidebar moderately. */
@media (min-width:1200px) {
  .single-main .article-layout {
    grid-template-columns:minmax(0,1fr) minmax(290px,310px);
    gap:clamp(24px,2.5vw,32px);
  }
  .single-main .article-layout>.article-body {max-width:none;min-width:0;}
  .single-main .article-layout>.sidebar {width:100%;max-width:none;min-width:0;}
}
@media (min-width:1380px) {
  .single-main .article-layout {grid-template-columns:minmax(0,1fr) 320px;}
}
/* Shared interactive treatment across homepage, search, category and post-only listing. */
.card.article-card,
.g6-post-preview {
  border:1px solid var(--color-border);
  background:var(--color-surface);
  box-shadow:0 2px 8px rgb(33 29 54 / 5%);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.card.article-card {border-bottom:4px solid var(--color-primary);}
.card.article-card:nth-child(even){border-bottom-color:var(--color-secondary);}
.card.article-card .card-image,
.g6-post-preview-media img {transition:transform .28s ease;}
.card.article-card .card-title a,
.g6-post-preview-body h2 a {transition:color .2s ease;}
@media (hover:hover) and (pointer:fine) {
  .card.article-card:hover,.g6-post-preview:hover {
    transform:translateY(-3px);
    border-color:var(--color-primary);
    box-shadow:0 12px 26px rgb(33 29 54 / 13%);
  }
  .card.article-card:hover .card-title a,
  .g6-post-preview:hover .g6-post-preview-body h2 a {color:var(--color-primary);}
  .card.article-card:hover .card-image,
  .g6-post-preview:hover .g6-post-preview-media img {transform:scale(1.025);}
}
.card.article-card:focus-within,.g6-post-preview:focus-within{
  border-color:var(--color-primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);
}
/* Image zoom is clipped to its media frame, leaving the card geometry stable. */
.article-card .card-image{object-fit:cover;}
.g6-post-preview-media{overflow:hidden;}
/* Tighter archive heading hierarchy and distinct intro blocks. */
.archive-main>h1{margin:26px 0 20px;line-height:1.45;letter-spacing:.005em;}
.archive-main>.archive-description:not(:empty){
  background:var(--color-surface);
  padding:18px 22px;
  border:1px solid var(--color-border);
  border-left:4px solid var(--color-secondary);
  border-radius:8px;
  line-height:1.85;
}
.archive-main>.archive-description>:last-child{margin-bottom:0;}
.archive-main>.result-count{font-weight:700;color:var(--color-text-muted);}
.archive-main .card-grid{align-items:stretch;}
.archive-main .article-card{height:100%;}
/* Usable and consistent sidebar widgets and TOC links. */
.single-main .sidebar .widget{overflow-wrap:anywhere;}
.single-main .sidebar .widget h2{margin-top:0;line-height:1.5;}
.single-main .sidebar .toc a,.single-main .sidebar .widget a{transition:color .15s ease;}
.single-main .sidebar .toc a:hover,.single-main .sidebar .widget a:hover{color:var(--color-primary);}
/* Navigation and 404 links: purposeful feedback without color overrides on visit. */
.link-rows li{transition:border-color .18s ease,box-shadow .18s ease;}
.link-rows li:hover,.link-rows li:focus-within{border-color:var(--color-primary);box-shadow:0 3px 12px rgb(33 29 54 / 8%);}
.link-rows a:hover,.link-rows a:focus-visible{color:var(--color-primary);text-decoration:none;}
.g6-post-preview-more:hover,.g6-post-preview-more:focus-visible{color:var(--color-primary);}
/* Touch devices retain original compact cards and avoid hover translation. */
@media(max-width:599px){
  .card.article-card{border-bottom:1px solid var(--color-border);border-left:3px solid var(--color-primary);}
  .card.article-card:nth-child(even){border-left-color:var(--color-secondary);}
  .archive-main>.archive-description:not(:empty){padding:15px 16px;}
}
@media(prefers-reduced-motion:reduce){
  .card.article-card,.g6-post-preview,.card.article-card .card-image,.g6-post-preview-media img,
  .link-rows li,.card.article-card .card-title a,.g6-post-preview-body h2 a {transition:none!important;}
  .card.article-card:hover,.g6-post-preview:hover{transform:none!important;}
  .card.article-card:hover .card-image,.g6-post-preview:hover .g6-post-preview-media img{transform:none!important;}
}


/* v1.0.11: two-column desktop homepage, both homepage display modes. */
.g6-home-columns{min-width:0;}
.g6-home-primary{min-width:0;}
@media(min-width:1200px){
  .g6-home-columns.g6-has-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start;}
  .g6-home-sidebar{display:block;min-width:0;width:100%;}
  .g6-home-primary .card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .g6-home-primary .card-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(min-width:1380px){
  .g6-home-columns.g6-has-sidebar{grid-template-columns:minmax(0,1fr) 320px;gap:32px;}
}
.g6-home-sidebar .widget{overflow-wrap:anywhere;margin-bottom:22px;}
.g6-home-sidebar .widget h2{margin-top:0;line-height:1.5;}
.g6-home-sidebar-links{padding-left:0;margin:0;list-style:none;}
.g6-home-sidebar-links li{padding:9px 0;border-bottom:1px solid var(--color-border);}
.g6-home-sidebar-links li:last-child{border-bottom:0;}
.g6-home-sidebar-links a{text-decoration:none;transition:color .16s ease;}
.g6-home-sidebar-links a:hover,.g6-home-sidebar-links a:focus-visible{color:var(--color-primary);text-decoration:underline;}
@media(max-width:1199px){.g6-home-sidebar{display:none;}}

/* v1.0.14: homepage only. Restore the original v1.0.7 sticky behavior
   (position:sticky + viewport-limited scrolling) on the GRID ITEM itself.
   Unlike a sticky inner child in a stretched aside, the sticky element can
   travel through the taller grid row. Does not affect .single-main or .toc-sticky. */
@media (min-width:1200px) {
  .home-main .g6-home-columns.g6-has-sidebar,
  .g6-article-home .g6-home-columns.g6-has-sidebar {
    align-items:start;
  }
  .home-main .g6-home-columns.g6-has-sidebar > .g6-home-sidebar,
  .g6-article-home .g6-home-columns.g6-has-sidebar > .g6-home-sidebar {
    display:block;
    align-self:start;
    height:auto;
    min-height:0;
    margin:0;
    padding:0;
    min-width:0;
    max-height:none;
    overflow:visible;
    position:static;
  }
  .home-main .g6-home-columns.g6-has-sidebar > .g6-home-sidebar--sticky,
  .g6-article-home .g6-home-columns.g6-has-sidebar > .g6-home-sidebar--sticky {
    position:sticky;
    top:96px; /* Same placement as v1.0.7 article TOC */
    max-height:calc(100vh - 120px);
    max-height:calc(100dvh - 120px);
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }
  .g6-home-sidebar__inner {margin:0;padding:0;min-width:0;position:static;max-height:none;overflow:visible;}
  .g6-home-sidebar__inner > .widget:first-child {margin-top:0;}
  .g6-home-sidebar__inner > .widget:first-child > h2:first-child {margin-top:0;}
  /* The article-centric home had no top padding: sticky top=96px pushed the
     sidebar down relative to its heading. Start both columns at the same y. */
  .g6-article-home {padding-top:24px;}
  /* Same top alignment for article-first home and its sidebar. */
  .g6-article-home .g6-home-primary > h1:first-child {margin:0 0 24px;}
  /* Even if theme has an earlier general sidebar top margin, home starts flush
     with the main column and does not inherit post-article spacing. */
  .g6-home-sidebar .widget:first-child {margin-top:0;}
}
@media (max-width:1199px) {
  .g6-home-sidebar {display:none!important;}
}

/* v1.0.15: Restore single-post TOC sticky containing block.
   v1.0.9 introduced align-items:start on the two-column grid. This caused
   the aside to shrink to its content and left no space for sticky travel.
   Stretch ONLY the article sidebar across the article grid row, as in v1.0.7.
   Keep the inner .toc-sticky element with its original top and max-height. */
@media (min-width:1200px) {
  .single-main .article-layout {
    align-items:stretch;
  }
  .single-main .article-layout > .sidebar {
    align-self:stretch;
    height:auto;
  }
}

/* v1.0.18: Separate semantic links for category, image and title. */
.article-card .card-title a:after{content:none;display:none;}
.g6-card-media-link{display:block;overflow:hidden;border-radius:4px 4px 0 0;line-height:0;width:100%;}
.g6-card-media-link .card-image{display:block;width:100%;height:auto;margin:0;}
.g6-card-category-link{display:inline-flex;align-items:center;width:fit-content;max-width:100%;min-height:24px;color:#fff!important;text-decoration:none!important;line-height:1.35;padding:4px 9px;position:relative;z-index:1;transition:background-color .18s ease,box-shadow .18s ease;}
.g6-card-category-link:hover,.g6-card-category-link:focus-visible{background:var(--color-secondary);color:#fff!important;text-decoration:none;}
.g6-card-category-link:focus-visible,.g6-card-media-link:focus-visible,.article-card .card-title a:focus-visible,.g6-post-preview-body h2 a:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;}
.g6-post-preview-body>.g6-card-category-link{margin-bottom:10px;}
@media(max-width:599px){.card.article-card .g6-card-media-link{width:104px;height:78px;align-self:start;}.card.article-card .g6-card-media-link img{width:104px;height:78px;object-fit:cover;}}
@media(prefers-reduced-motion:reduce){.g6-card-category-link{transition:none;}}

/* v1.0.19: recent-post listing pages reuse archive card/pagination design. */
.g6-recent-archive .g6-recent-section{margin-top:16px}
.g6-recent-archive .breadcrumbs{margin-bottom:20px}
.g6-home-recent-pagination{margin:28px 0 0}
@media(max-width:599px){.g6-home-recent-pagination{margin-top:22px}}


/* v1.0.21: User-configurable card hover / link hover / sidebar link hover.
   Separate from the main color; existing color options remain intact.
   Customizer requires "カスタム配色を使用" ON to output overrides.
   Fallback values preserve defaults except for the previously missing sidebar feedback. */
:root {
  --color-card-hover: #A73562;
  --color-link-hover: #176A72;
  --color-sidebar-hover: #69478A;
}
@media (hover:hover) and (pointer:fine) {
  .card.article-card:hover,
  .g6-post-preview:hover {
    border-color:var(--color-card-hover);
  }
  .card.article-card:hover .card-title a,
  .g6-post-preview:hover .g6-post-preview-body h2 a {
    color:var(--color-link-hover);
  }
  .g6-card-category-link:hover,
  .g6-card-category-link:focus-visible {
    background-color:var(--color-card-hover);
  }
}
.card.article-card:focus-within,
.g6-post-preview:focus-within {border-color:var(--color-card-hover);}
/* Consistent feedback for homepage sidebar, article sidebar, WordPress widgets and TOC. */
.g6-home-sidebar a:not(.button),
.single-main .sidebar a:not(.button) {
  transition:color .16s ease,text-decoration-color .16s ease;
}
.g6-home-sidebar a:not(.button):hover,
.g6-home-sidebar a:not(.button):focus-visible,
.single-main .sidebar a:not(.button):hover,
.single-main .sidebar a:not(.button):focus-visible,
.single-main .sidebar .toc a[aria-current]:hover {
  color:var(--color-sidebar-hover);
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(prefers-reduced-motion:reduce){
  .g6-home-sidebar a:not(.button),.single-main .sidebar a:not(.button){transition:none;}
}


/* v1.0.22: Previous/next article links directly above related posts.
   Preserve the post layout/sidebar and make navigation deliberately secondary. */
.single-main > .post-navigation {
  margin:28px 0 32px;
  max-width:860px;
}
.single-main > .post-navigation .nav-links {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.single-main > .post-navigation .nav-previous,
.single-main > .post-navigation .nav-next {
  min-width:0;
  padding:0;
  border:1px solid var(--color-border);
  border-radius:8px;
  background:var(--color-surface);
  overflow:hidden;
}
.single-main > .post-navigation .nav-links a {
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:12px 15px;
  min-height:70px;
  height:100%;
  color:var(--color-text);
  text-decoration:none;
  transition:color .16s ease,border-color .16s ease,background-color .16s ease;
}
.single-main > .post-navigation .g6-post-nav-label {
  color:var(--color-text-muted);
  font-size:12px;
  font-weight:600;
  line-height:1.4;
}
.single-main > .post-navigation .g6-post-nav-title {
  font-size:14px;
  line-height:1.55;
  font-weight:700;
  overflow-wrap:anywhere;
}
.single-main > .post-navigation .nav-links a:hover,
.single-main > .post-navigation .nav-links a:focus-visible {
  color:var(--color-link-hover,var(--color-primary));
  background:var(--color-surface-light);
}
.single-main > .post-navigation .nav-links a:focus-visible {outline:3px solid var(--color-accent);outline-offset:-3px;}
@media(max-width:599px){
  .single-main > .post-navigation {margin:22px 0 28px;}
  .single-main > .post-navigation .nav-links {grid-template-columns:1fr;gap:10px;}
  .single-main > .post-navigation .nav-links a {padding:11px 13px;min-height:62px;}
}
@media(prefers-reduced-motion:reduce){.single-main > .post-navigation .nav-links a{transition:none;}}

/* v1.0.23 - accessible back-to-top image button. Does not affect sticky sidebars. */
.g6-backtop{
 position:fixed;z-index:80;
 right:calc(var(--g6-backtop-right,20px) + env(safe-area-inset-right,0px));
 bottom:calc(var(--g6-backtop-bottom,24px) + env(safe-area-inset-bottom,0px));
 display:grid;place-items:center;
 width:var(--g6-backtop-pc,56px);height:var(--g6-backtop-pc,56px);
 border:0;padding:0;background:transparent;border-radius:50%;cursor:pointer;
 -webkit-tap-highlight-color:transparent;
 transition:transform .18s ease,filter .18s ease,opacity .18s ease;
 filter:drop-shadow(0 4px 10px rgba(29,18,53,.24));
}
.g6-backtop[hidden]{display:none!important;}
.g6-backtop-image{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;}
@media(hover:hover) and (pointer:fine){.g6-backtop:hover{transform:translateY(-4px) scale(1.06);filter:drop-shadow(0 7px 14px rgba(167,53,98,.4));}}
.g6-backtop:focus-visible{outline:3px solid var(--color-accent,#176A72);outline-offset:4px;}
@media(max-width:767px){.g6-backtop{width:var(--g6-backtop-mobile,48px);height:var(--g6-backtop-mobile,48px);}}
@media(prefers-reduced-motion:reduce){.g6-backtop{transition:none;}}
