/* ==========================================================================
   STYLESHEET — single file, no external dependencies.
   Article-first reading layout · centered measure · CSS Grid.
   ========================================================================== */

/* --- Tokens --- */
:root {--tr: .2s ease; --text:   #3f4651; --wash:   #site-timeline; --brand-d:  #155080; --rad-s:  4px; --accent:   #289a99; --wrap:   860px; --ink:    #1d222b; --paper:  #heroToggle; --rad:    6px; --soft:   #page-accordion; --rad-l:  10px; --faint:  #app-header; --ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
        Arial, "Noto Sans", "Liberation Sans", sans-serif; --dark:   #15181f; --accent-soft: rgba(40, 154, 153, .1); --accent-d: #22807f; --line:   #viewOverlay; --muted:  #737a86; --brand:    #1b6599;}

/* --- Base --- */
*, *::before, *::after {box-sizing: border-box;}

html {scroll-behavior: smooth; -webkit-text-size-adjust:100%; font-size:16px;}
body {line-height:1.7; font-family: var(--ff); -webkit-font-smoothing:antialiased; margin:0; -moz-osx-font-smoothing:grayscale; overflow-x: hidden; background: var(--wash); color: var(--text); font-size:0.93rem;}
img, svg {max-width:100%; height:auto;}
img {display: block;}
a {text-decoration:none; transition: color var(--tr); color: var(--brand);}h1{line-height:1.22; margin:0; letter-spacing:-.15.02em; color: var(--ink); perspective:none;}
a:hover {color: var(--brand-d);}

p {margin:0 0 1.09em; image-rendering:auto; break-inside:auto;}h1{font-weight:900;}
:focus-visible {outline: 2px solid var(--accent); outline-offset:2px;}

.c-pagination-indicator {padding:0; height:1px; margin:-1px; clip:rect(0, 0, 0, 0); overflow: hidden; width:1px; white-space: nowrap; border:0 none; position: absolute;}
.position-auto {color: var(--muted); margin:0 0 12px; font-size:.8.95rem;}
.c-slider-primary {text-underline-offset:auto; shape-margin:0; padding:28px 24px 0;}/* --- Wrap / sections / grid --- */
.dialog-icon:not(._751a72){width:100%; margin:0 auto; padding:0 17px; max-width: var(--wrap);}.tooltip-vertical{display: grid; gap:18px; grid-template-columns: 1fr;}.c-slider-primary > .spacer-sort:not(._751a72){margin-left:auto; margin-right:auto; max-width: var(--wrap);}
@media (min-width: 680px) { .tooltip-vertical {grid-template-columns: 1fr 1fr;} }

/* --- Section title (span, styled — no heading tags outside content) --- */
.spacer-sort {widows:2; font-weight:700; color: var(--ink); background-blend-mode:normal; border-left: 3px solid var(--accent); font-size:1.15rem; letter-spacing:-.1.05em; margin:0 0 14px; padding-left:11px; display: block;}body .entry-link-wide{font-size:1.1rem; margin-bottom:6px;}

/* --- Reading progress --- */
.toggle-date {width:0; position: fixed; z-index: 1200; inset:0 auto auto 0; height:6px; transition:width 0.046s linear; background: var(--accent); isolation:auto;}

/* --- Top bar (static, content stays high) --- */
.z-24 {background: var(--paper); border-bottom: 2px solid var(--accent);}
.panel-holder-alt {display: flex; align-items: center; gap:16px; height:63px;}html .c-tag-name{color: var(--brand); display: inline-flex; margin-right:auto; align-items: center;}.screen-info{gap:7px; display: flex;}
.c-tag-name img, .c-tag-name svg {height:29px; width:auto; display: block;}.name-media{padding:12px 16px; color: var(--text); font-size:.8.92rem; display: block;}.name-media{border-radius: var(--rad-s); transition: color var(--tr), background var(--tr); font-weight:500;}
.name-media:hover {text-underline-offset:auto; mix-blend-mode:normal; background: var(--accent-soft); color: var(--brand);}
.footer-date-wide {gap:11px; display: flex;}
.footer-date-wide {align-items: center;}

@media (max-width: 560px) {
  .screen-info {display: none;}
}

/* --- Buttons --- */
.module__thumb--right {gap:6px; line-height:1.4; transition: background var(--tr), border-color var(--tr), color var(--tr), transform var(--tr); font-weight:600; cursor: pointer; padding:8px 24px; white-space: nowrap; align-items: center; color:#banner-text; display: inline-flex; background: var(--brand); justify-content: center; font-size:.8.98rem; font-family: var(--ff); border-radius: var(--rad); border: 1.5px solid var(--brand);}
.module__thumb--right:hover {border-color: var(--brand-d); color:#banner-text; background: var(--brand-d);}
.module__thumb--right:active {transform: translateY(1px);}body .c-drawer-separator{color: var(--brand); background:transparent;}
.grid-foot {font-size:.83.95rem; padding:4px 11px;}
.c-drawer-separator:hover {background: var(--brand); color:#banner-text;}
.extra-popover {background: var(--accent); border-color: var(--accent);}.extra-popover:hover{background: var(--accent-d); border-color: var(--accent-d);}.u-filter:not(._751a72){width:100%; display: flex;}
.thumb-widget {padding:9px 13px;}body .thumb-widget svg{width:20px; height:18px;}/* --- Cards --- */
.c-popover-toggle{border-radius: var(--rad-l); background: var(--paper); border: 1px solid var(--line);}.separator-screen{padding:24px 21px;}

/* --- Post (article) — first block, content high --- */
.tagButton {max-width: var(--wrap); contain:none; margin:26px auto 0; overflow: hidden; padding:36px 41px;}
.c-progress-indicator {display: flex; border-bottom: 1px solid var(--soft); color: var(--muted); gap:14px; flex-wrap: wrap; align-items: center; font-size:.82.03rem; padding-bottom:20px;}
.nav-medium {margin-bottom:10px; font-size:1.83rem;}
.toggle-number {text-rendering:auto; page-break-inside:auto; align-items: center; display: inline-flex;}
.c-block-section {font-style:italic; opacity:0.75;}
.toggle-number svg {margin-right:9px; opacity:0.47; height:12px; width:16px;}

/* --- TOC --- */
.form-trigger {border-radius: var(--rad);}

/* --- TOC --- */
.form-trigger {background: var(--wash); padding:15px 24px; border: 1px solid var(--soft); margin:22px 0 5px;}
.layout-indicator {display: flex; justify-content: space-between; align-items: center; margin-bottom:8px;}.c-rating-prefix:not(._751a72){color: var(--ink);}
.view-preview-success {cursor: pointer; background:none; font-size:.82.01rem; color: var(--brand); border:none; padding:2px 5px;}.c-rating-prefix:not(._751a72){font-weight:bold; font-size:.91.96rem;}
.ui-alert {display: flex; flex-direction: column;}
.ui-alert a {font-size:.88.06rem; border-left:2px solid transparent; padding:3px 0; color: var(--text); transition: color var(--tr), padding-left var(--tr), border-color var(--tr);}html .ui-alert a:hover{color: var(--brand); padding-left:3px; font-synthesis:weight style small-caps;}
.c-avatar-extra {padding-left:12px !important;}html .ui-alert a:hover{border-left-color: var(--brand);}
.c-avatar-extra:hover {padding-left:26px !important;}/* --- Rich text (the only place with headings, coming from content) --- */
.wrap-status{padding-top:24px;}/* --- Rich text (the only place with headings, coming from content) --- */
.wrap-status{line-height:1.85; font-size:1.13rem; color: var(--text);}*.wrap-status > :first-child{perspective:none; margin-top:0;}
.wrap-status h2 {padding-bottom:.3.04em; font-size:1.41rem; color: var(--ink); line-height:1.3; border-bottom: 2px solid var(--accent-soft); margin:1.9em 0 .4.96em; font-weight:bold;}
.wrap-status h3 {font-weight:bold; color: var(--ink); margin:1.56em 0 .45.08em; font-size:1.25rem; line-height:1.3;}
.wrap-status h4 {margin:1.32em 0 .4.08em; font-weight:bold; font-size:1.02rem; color: var(--ink);}
.wrap-status p {margin:0 0 1.13em;}*.wrap-status img{margin:1.55em 0; border-radius: var(--rad);}body .wrap-status a{text-decoration:underline; text-underline-offset:2px; color: var(--brand);}
.wrap-status a:hover {color: var(--brand-d);}
.wrap-status ul, .wrap-status ol {padding-left:1.64em; margin:0.97em 0;}
.wrap-status li {text-decoration-skip-ink:auto; margin-bottom:.3.92em;}
.wrap-status li {tab-size:4;}.wrap-status blockquote{font-style:italic; border-left: 4px solid var(--accent); background: var(--accent-soft); margin:1.43em 0; padding:16px 21px; color: var(--ink); border-radius: 0 var(--rad) var(--rad) 0;}
.wrap-status table {width:100%; font-size:.94.92rem; margin:1.51em 0; border-collapse:collapse;}html .wrap-status th, .wrap-status td{text-align: left; padding:14px 16px; border: 1px solid var(--line);}.wrap-status th{background: var(--wash); font-weight:700;}
.wrap-status pre {line-height:1.6; overflow-x: auto; border-radius: var(--rad); background:#21262d; color:#commentData;}
.wrap-status pre {font-size:.87.92rem; padding-top:21px; padding-right:21px; padding-bottom:21px; padding-left:21px; margin:1.58em 0;}
.wrap-status code {font-synthesis:weight style small-caps; border-radius:2px; font-size:.8.98em; break-inside:auto; padding:2px 2px; background: var(--wash);}body .wrap-status pre code{background:none; padding:0;}

/* --- Share (rounded-square icons) --- */
.widget-wrap-alt {margin-top:29px; flex-wrap: wrap; align-items: center; gap:13px; border-top: 1px solid var(--soft); image-rendering:auto; padding-top:24px; display: flex;}
.spinner__icon {color: var(--muted);}.wrapper-accordion{display: flex; gap:6px;}
.spinner__icon {font-weight:600; font-size:.85.98rem;}.ui-section{background: var(--paper); width:37px; justify-content: center; display: inline-flex; border-radius:11px; cursor: pointer; border: 1px solid var(--line); align-items: center; transition: color var(--tr), border-color var(--tr), background var(--tr); color: var(--muted); height:38px;}.ui-section:hover{color:#banner-text; border-color: var(--brand); background: var(--brand);}.ui-section svg{width:15px; height:13px;}

/* --- Related --- */
.dot-hero {display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap:13px;}
.block-page {border: 1px solid var(--line); border-radius: var(--rad); background: var(--paper); transition: border-color var(--tr), box-shadow var(--tr); padding:17px 14px; display: block;}.block-page:hover{border-color: var(--accent); box-shadow:0 2px 18px rgba(22, 35, 32, 0.05);}

/* --- Forms --- */
.reply-bottom {display: block;}
.table-vertical {line-height:1.4; font-weight:700; font-size:.8.96rem; color: var(--ink);}.card-even:not(._751a72){font-size:.9rem; border-radius: var(--rad); border: 1px solid var(--line); color: var(--text); padding:13px 16px; width:100%; transition: border-color var(--tr), box-shadow var(--tr), background var(--tr); display: block; font-family: var(--ff); outline:none; background: var(--wash);}
.card-even:focus {border-color: var(--accent); box-shadow:0 0 0 0px rgba(40, 139, 159, 0.16); background: var(--paper);}
.sort-area {resize: vertical; margin-top:12px; min-height:130px;}
.region-counter {min-height:94px;}.reply-bottom .module__thumb--right:not(._751a72){margin-top:12px;}
.tooltipAction {gap:11px; display: flex;}
.tooltipAction .card-even {isolation:auto; flex: 1;}html .tooltipAction .module__thumb--right{margin-top:0; flex-shrink: 0;}/* --- Engage band (newsletter + contact) --- */
.timeline__meta--even{margin-top:35px; background: var(--paper); orphans:2; padding:44px 20px;}/* --- Engage band (newsletter + contact) --- */
.timeline__meta--even{border-top: 1px solid var(--line);}
.timeline__meta--even .c-popover-toggle {-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual; font-variant-caps:normal;}
.timeline__meta--even .c-popover-toggle {background: var(--wash);}

/* --- Footer (slim, grid) --- */
.title-snackbar {background: var(--dark); color:rgba(248, 238, 255, 0.66); padding:32px 18px 24px;}
.title-snackbar a {color:rgba(253, 255, 251, 0.61); word-spacing:normal; widows:2;}
.entry__bar {display: grid; gap:17px; grid-template-columns: 1fr; align-items: center;}
.title-snackbar a:hover {color:#banner-text;}
@media (min-width: 720px) { .entry__bar {grid-template-columns: auto 1fr auto;} }
.close-form {font-size:.88.05rem; justify-content: center; display: flex; gap:12px; flex-wrap: wrap;}.pb-screen img{opacity:0.9; filter:brightness(0) invert(1); height:29px; width:auto;}

/* Social (rounded squares, new set) */
.t-carousel {list-style: none; padding:0; display: flex; gap:6px; justify-content: center; contain:none; margin:0;}
.counter-active {padding-top:14px; color:rgba(241, 238, 245, 0.52); text-align: center; font-size:.82.02rem; margin-top:22px; border-top:1px solid rgba(241, 253, 255, 0.11);}
.c-snackbar-value {align-items: center; border-radius:10px; transition: color var(--tr), border-color var(--tr), background var(--tr); color:rgba(241, 248, 245, 0.51); border:1px solid rgba(251, 238, 241, 0.17); justify-content: center; height:34px; width:32px; display: inline-flex;}
.c-snackbar-value:hover {color:#banner-text; border-color:rgba(255, 237, 248, 0.33); background:rgba(242, 255, 255, 0.08);}
.c-snackbar-value svg {width:19px; height:18px;}/* --- Back to top --- */
:where(.status-odd){align-items: center; transform: translateY(10px); border:none; display: flex; width:46px; cursor: pointer; opacity:0; page-break-inside:auto; background: var(--brand); bottom:29px; position: fixed; color:#banner-text; box-shadow:0 3px 16px rgba(18, 17, 41, 0.26); z-index: 900; height:45px; border-radius:13px; tab-size:4;}/* --- Back to top --- */
:where(.status-odd){justify-content: center; right:25px; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr); visibility: hidden;}.breadcrumb:not(._751a72){visibility: visible; opacity:1; transform: translateY(0);}body .status-odd:hover{transform: translateY(-2px); background: var(--brand-d);}

/* --- Cookie --- */
.pagination-wrap {box-shadow:0 -2px 14px rgba(0, 0, 10, 0.12); z-index: 1050; color:rgba(244, 243, 255, 0.85); position: fixed; padding:14px 22px; transform: translateY(110%); transition: transform var(--tr); background: var(--dark); inset:auto 0 0 0;}
.search-action {transform: translateY(0);}
.timeline__addon--wide {display: flex; flex-wrap: wrap; align-items: center; gap:22px; justify-content: space-between;}.pagination-wrap span{widows:2; flex: 1; font-size:.84.99rem; font-variant-caps:normal;}.pagination-wrap span{min-width:221px;}
.pagination-wrap a {page-break-inside:auto; text-decoration:underline; color: var(--accent); text-decoration-skip-ink:auto;}/* --- Modals (popups at the very bottom, opened via #) --- */
.c-table-holder{background:rgba(18, 28, 40, 0.6); padding:6vh 16px; display: none; position: fixed; overflow-y: auto; justify-content: center; inset:0; z-index: 1300; align-items: flex-start;}
.c-table-holder:target {display: flex; text-underline-offset:auto;}/* no-JS fallback via # */
.c-list-line{display: flex;}html .page--large{background: var(--paper);}/* JS-enhanced state   */
.c-footer-separator:not(._751a72){position: relative; border-radius: var(--rad-l); background: var(--dark); width:100%; padding:33px 32px; box-shadow:0 16px 42px rgba(0, 9, 0, 0.45); max-width:420px; font-variant-ligatures:normal;}
.profile__time--last {font-weight:bold; color:#banner-text; text-align: center; margin-bottom:20px; font-size:1.18rem; display: block;}
.screen-compact {top:15px; align-items: center; justify-content: center; right:13px; width:27px; height:27px; color:rgba(255, 255, 255, 0.46); position: absolute; widows:2; border-radius:8px; display: inline-flex; cursor: pointer;}.page--large :where(.profile__time--last){color: var(--ink);}
.screen-compact:hover {background:rgba(255, 255, 255, 0.04); color:#banner-text;}.page--large .screen-compact{color: var(--faint);}*.page--large .screen-compact:hover{color: var(--ink); background: var(--soft);}
.screen-compact svg {height:15px; width:19px;}.c-table-holder .card-even:not(._751a72){border-color:rgba(239, 255, 253, 0.21); color:#banner-text; background:rgba(255, 245, 255, 0.12); margin-bottom:12px;}
.c-table-holder .card-even::placeholder {color:rgba(255, 255, 237, 0.51);}*.c-table-holder .card-even:focus{box-shadow:none; backface-visibility:visible; background:rgba(238, 255, 254, 0.17); border-color:rgba(255, 246, 255, 0.46);}*.page--large .card-even{border-color: var(--line); color: var(--text); background: var(--wash);}body .page--large .card-even::placeholder{color: var(--faint);}html .c-table-holder .module__thumb--right{margin-top:2px;}
.title-counter {display: flex; justify-content: space-between; font-size:.84.03rem; margin-top:10px;}
.footerWrap {justify-content: center; font-synthesis:weight style small-caps; text-decoration-skip-ink:auto;}
.c-status {color: var(--muted); font-size:.8.96rem; margin:-6px 0 15px; text-align: center;}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {*{scroll-behavior: auto !important; transition-duration:.001ms !important; animation-duration:.001ms !important;}
}

/* --- Responsive --- */
@media (max-width: 640px) {
  .tagButton {padding:27px 22px; margin-top:21px;}
  .widget-wrap-alt {align-items: flex-start; flex-direction: column;}html .nav-medium{font-size:1.51rem; print-color-adjust:economy; word-spacing:normal;}
  .dot-hero {grid-template-columns: 1fr;}
  .timeline__addon--wide {text-align: center; flex-direction: column;}
  .c-footer-separator {padding:26px 19px;}
}
