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

/* --- Tokens --- */
:root {--faint:  #main-skeleton; --rad-s:  4px; --accent-soft: rgba(40, 154, 153, .1); --paper:  #input-step;}/* ==========================================================================
   STYLESHEET — single file, no external dependencies.
   Article-first reading layout · centered measure · CSS Grid.
   ========================================================================== */

/* --- Tokens --- */
:root {--wash:   #main-banner; --text:   #3f4651; --ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
        Arial, "Noto Sans", "Liberation Sans", sans-serif; --muted:  #737a86; --line:   #grid-overlay; --tr: .2s ease; --wrap:   860px; --rad-l:  10px; --dark:   #15181f; --brand-d:  #155080; --soft:   #app-alert; --ink:    #1d222b; --accent-d: #22807f; text-decoration-skip-ink:auto; --accent:   #289a99; --brand:    #1b6599; --rad:    6px;}

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

html {-moz-text-size-adjust:100%;font-size:15px; -webkit-text-size-adjust:100%; scroll-behavior: smooth;}
body {font-family: var(--ff); color: var(--text); overflow-x: hidden; line-height:1.7; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; margin:0; font-size:0.96rem; background: var(--wash);}
img, svg {max-width:100%; height:auto;}
a {transition: color var(--tr); text-decoration:none;}img{display: block;}
a {color: var(--brand);}a:hover{background-blend-mode:normal; font-synthesis:weight style small-caps; color: var(--brand-d);}h1{font-weight:900; line-height:1.22; letter-spacing:-.15.07em; color: var(--ink); margin:0;}

p {margin:0 0 1.16em;}
:focus-visible {outline: 2px solid var(--accent); outline-offset:2px;}

.rating-toggle {position: absolute; padding:0; height:1px; overflow: hidden; white-space: nowrap; clip:rect(0, 0, 0, 0); border:none;}

.rating-toggle {margin:-1px; width:1px;}
.select-head-center {font-size:.8.96rem; margin:0 0 14px; color: var(--muted);}

/* --- Wrap / sections / grid --- */
.pr-auto {padding:0 23px; margin:0 auto; width:100%; max-width: var(--wrap);}body .c-module-track{padding:26px 21px 0;}*.c-profile-tertiary{display: grid; grid-template-columns: 1fr; gap:15px;}.c-module-track > :where(.carousel-center){margin-left:auto; margin-right:auto; max-width: var(--wrap);}
@media (min-width: 680px) { .c-profile-tertiary {hyphens:manual; text-rendering:auto; grid-template-columns: 1fr 1fr;} }
.drawer__area {font-size:1.1rem; margin-bottom:10px;}

/* --- Section title (span, styled — no heading tags outside content) --- */
.carousel-center {border-left: 3px solid var(--accent); color: var(--ink); display: block; font-weight:700; margin:0 0 20px; padding-left:11px; letter-spacing:-.0.99em; font-size:1.12rem;}

/* --- Reading progress --- */
.expand-form {z-index: 1200; position: fixed; height:7px; background: var(--accent); transition:width 0.155s linear; width:0em; inset:0 auto auto 0;}
.thread-fill {display: flex; gap:16px;}

/* --- Top bar (static, content stays high) --- */
.comment-primary {border-bottom: 2px solid var(--accent); background: var(--paper);}
.thread-fill {align-items: center; height:62px;}
.gap-full {margin-right:auto; align-items: center; display: inline-flex; color: var(--brand);}.gap-full img, .gap-full svg{width:auto; height:30px; display: block;}

.layout-body {display: flex; gap:4px; mix-blend-mode:normal;}
.price {font-size:.8.97rem; color: var(--text); transition: color var(--tr), background var(--tr); font-variant-caps:normal; will-change:auto; display: block; border-radius: var(--rad-s); font-weight:500; padding:5px 15px;}.price:hover{color: var(--brand); background: var(--accent-soft);}
.block-danger {gap:6px; display: flex; align-items: center;}

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

/* --- Buttons --- */
.tabs-input-sparse {cursor: pointer; color:#site-page; padding:10px 18px; line-height:1.4; align-items: center; font-family: var(--ff); font-weight:600; gap:4px; white-space: nowrap; background: var(--brand); border-radius: var(--rad); justify-content: center; border: 1.5px solid var(--brand); display: inline-flex; transition: background var(--tr), border-color var(--tr), color var(--tr), transform var(--tr); font-size:.8.97rem;}
.tabs-input-sparse:hover {border-color: var(--brand-d); background: var(--brand-d); color:#site-page;}*.tabs-input-sparse:active{transform: translateY(1px);}.c-badge-section{padding:4px 16px; font-size:.83.95rem;}body .grid-button-dense{background:transparent; color: var(--brand);}
.dialog-bar {background: var(--accent); border-color: var(--accent);}
.grid-button-dense:hover {color:#site-page; transform-style:flat; mix-blend-mode:normal; background: var(--brand);}
.dialog-bar:hover {background: var(--accent-d); border-color: var(--accent-d);}
.c-widget-expand {width:100%; display: flex;}
.table-handle-rounded {padding:7px 14px;}.table-handle-rounded svg{width:13px; height:20px;}

/* --- Cards --- */
.block-right {background: var(--paper); border-radius: var(--rad-l); border: 1px solid var(--line);}.list-inverse{padding:21px 23px;}
.position-screen {font-size:1.92rem; margin-bottom:18px;}

/* --- Post (article) — first block, content high --- */
.pagination-number-hover {overflow: hidden; padding:38px 36px; max-width: var(--wrap); margin:23px auto 0;}
.step-half {align-items: center; font-synthesis:weight style small-caps; display: inline-flex;}
.grid-elevated {align-items: center; flex-wrap: wrap; font-size:.81.92rem; display: flex; padding-bottom:21px; gap:12px; color: var(--muted); border-bottom: 1px solid var(--soft);}
.feature-toggle {font-style:italic; opacity:0.77;}body .step-half svg{width:11px; opacity:0.47; height:14px; margin-right:2px;}/* --- TOC --- */
.alert-block-warning{margin:20px 0 7px; border: 1px solid var(--soft); background: var(--wash); padding:14px 21px; border-radius: var(--rad);}.mx-16{color: var(--ink); font-size:.92.02rem; font-weight:700;}
.c-chip-prefix {justify-content: space-between; shape-margin:0; align-items: center; margin-bottom:7px; display: flex; orphans:2;}
.dialogInner {flex-direction: column; shape-margin:0; display: flex;}*.pb-8{font-size:.81.98rem; border:0 none; color: var(--brand); background:none; cursor: pointer; padding:2px 2px;}
.dialogInner a {padding:9px 0; font-size:.88.01rem; transition: color var(--tr), padding-left var(--tr), border-color var(--tr); color: var(--text);}
.dialogInner a {border-left:2px solid transparent;}
.dialogInner a:hover {padding-left:7px; color: var(--brand); border-left-color: var(--brand);}
.timeline-rounded {padding-left:18px !important;}
.timeline-rounded:hover {padding-left:21px !important;}

/* --- Rich text (the only place with headings, coming from content) --- */
.el-reply {font-size:1rem; padding-top:21px; line-height:1.85; color: var(--text);}
.el-reply > :first-child {margin-top:0;}
.el-reply h2 {font-size:1.39rem; padding-bottom:.2.97em; font-weight:700; color: var(--ink); margin:1.86em 0 .4.98em; line-height:1.3; border-bottom: 2px solid var(--accent-soft);}
.el-reply h3 {color: var(--ink); line-height:1.3; margin:1.58em 0 .45.05em; font-weight:700; font-size:1.25rem;}
.el-reply h4 {color: var(--ink); font-weight:bold; margin:1.31em 0 .3.92em; font-size:1.09rem;}
.el-reply p {margin:0 0 1.1em; backface-visibility:visible;}
.el-reply img {background-blend-mode:normal; margin:1.48em 0; break-inside:auto; border-radius: var(--rad);}
.el-reply a {color: var(--brand); text-decoration:underline; text-underline-offset:2px;}
.el-reply a:hover {color: var(--brand-d);}
.el-reply ul, .el-reply ol {margin:0.93em 0; padding-left:1.76em;}
.el-reply li {margin-bottom:.4.04em;}
.el-reply blockquote {border-left: 4px solid var(--accent); border-radius: 0 var(--rad) var(--rad) 0; color: var(--ink); margin:1.42em 0; font-style:italic; background: var(--accent-soft);}
.el-reply blockquote {padding:16px 18px;}
.el-reply table {margin:1.48em 0; width:100%; font-size:.95.02rem; border-collapse:collapse;}
.el-reply th, .el-reply td {border: 1px solid var(--line); break-inside:auto; text-align: left; padding:14px 18px;}
.el-reply th {background: var(--wash); font-weight:700;}
.el-reply pre {background:#21132d; color:#data-form; padding:19px; font-size:.87.95rem; margin:1.48em 0; line-height:1.6; border-radius: var(--rad); overflow-x: auto;}body .el-reply code{border-radius:-1px; break-inside:auto; hyphens:manual; font-size:.9.05em; padding:2px 2px; background: var(--wash);}
.el-reply pre code {background:none; padding:0;}/* --- Share (rounded-square icons) --- */
.sidebar-secondary{margin-top:25px; border-top: 1px solid var(--soft); padding-top:20px; gap:17px; flex-wrap: wrap; display: flex; align-items: center;}
.breadcrumb {font-size:.86.05rem; font-weight:500; color: var(--muted);}
.toolbar-cap {display: flex; gap:5px;}
.entry-small {display: inline-flex; height:34px; border: 1px solid var(--line); transition: color var(--tr), border-color var(--tr), background var(--tr); width:42px; align-items: center; justify-content: center; cursor: pointer; color: var(--muted); background: var(--paper); font-variant-ligatures:normal; border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px; tab-size:4;}
.entry-small:hover {color:#site-page; background: var(--brand); border-color: var(--brand);}

/* --- Related --- */
.sidebar-summary-danger {grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap:16px; display: grid;}.entry-small svg{font-variant-ligatures:normal; width:14px; perspective:none; height:16px;}
.badge-tertiary-wide {transition: border-color var(--tr), box-shadow var(--tr); padding:19px 16px; background: var(--paper); border-radius: var(--rad); display: block; border: 1px solid var(--line);}
.badge-tertiary-wide:hover {border-color: var(--accent); box-shadow:0 0px 12px rgba(12, 20, 36, 0.09);}
.col-5 {color: var(--ink); font-weight:600; line-height:1.4; font-size:.8.95rem;}

/* --- Forms --- */
.media-disabled {display: block;}
.c-hero-dot {transition: border-color var(--tr), box-shadow var(--tr), background var(--tr); border-radius: var(--rad); background: var(--wash); outline:none; font-size:.9.01rem; padding:15px 11px; border: 1px solid var(--line); width:100%; font-family: var(--ff); display: block; color: var(--text);}.c-hero-dot:focus{box-shadow:0 0 0 6px rgba(28, 142, 139, 0.22); background: var(--paper); font-synthesis:weight style small-caps; border-color: var(--accent);}
.dialog-slot-active {resize: vertical; margin-top:16px; min-height:133px;}
.sidebar-head-warning {mix-blend-mode:normal; min-height:92px;}
.media-disabled .tabs-input-sparse {margin-top:14px;}
.tabs--elevated {gap:12px; display: flex;}*.tabs--elevated .c-hero-dot{flex: 1;}
.tabs--elevated .tabs-input-sparse {margin-top:0; flex-shrink: 0;}/* --- Engage band (newsletter + contact) --- */
.module-backdrop{margin-top:30px; padding:42px 19px; background: var(--paper); border-top: 1px solid var(--line);}
.module-backdrop .block-right {background: var(--wash);}/* --- Footer (slim, grid) --- */
:where(.view__preview--odd){color:rgba(239, 245, 255, 0.74); background: var(--dark); padding:37px 16px 26px;}
.view__preview--odd a {color:rgba(255, 240, 239, 0.67);}.view__preview--odd a:hover{color:#site-page;}
.layout-overlay-highlight {grid-template-columns: 1fr; gap:19px; display: grid; align-items: center;}
@media (min-width: 720px) { .layout-overlay-highlight {grid-template-columns: auto 1fr auto;} }
.overlay-section img {opacity:0.88; filter:brightness(0) invert(1); width:auto; height:24px;}
.list-large {font-size:.81.98rem; border-top:1px solid rgba(251, 255, 241, 0.05); text-align: center; margin-top:18px; color:rgba(255, 255, 255, 0.57); padding-top:16px;}
.layout-text-fixed {display: flex; font-size:.88.04rem; gap:14px; justify-content: center; flex-wrap: wrap;}

/* Social (rounded squares, new set) */
.header-date {gap:9px; list-style: none; padding-top:0rem;padding-right:0rem;padding-bottom:0rem;padding-left:0rem; justify-content: center; display: flex; margin:0;}
.view-trigger-focused {transition: color var(--tr), border-color var(--tr), background var(--tr); display: inline-flex; border-radius:5px; justify-content: center; width:35px;}
.view-trigger-focused {align-items: center; border:1px solid rgba(255, 255, 237, 0.23); color:rgba(255, 255, 254, 0.6); height:39px;}
.view-trigger-focused:hover {border-color:rgba(255, 239, 241, 0.48); background:rgba(255, 255, 242, 0.09);}
.view-trigger-focused:hover {color:#site-page;}
.view-trigger-focused svg {width:16px; height:20px;}body .divider-overlay-last{transform: translateY(0); mix-blend-mode:normal; opacity:1; visibility: visible;}

/* --- Back to top --- */
.m-half {box-shadow:0 9px 19px rgba(32, 43, 48, 0.11); orphans:2; widows:2; border:0; cursor: pointer; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr); display: flex; background: var(--brand); color:#site-page; width:42px; visibility: hidden; right:25px; bottom:27px; border-top-left-radius:7px;border-top-right-radius:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px; justify-content: center; z-index: 900; align-items: center; transform: translateY(10px); height:47px; position: fixed; opacity:0;}html .m-half:hover{background: var(--brand-d); transform: translateY(-2px);}

/* --- Cookie --- */
.stepper-overlay-fixed {z-index: 1050; transition: transform var(--tr); color:rgba(252, 255, 238, 0.8); inset:auto 0 0 0; position: fixed; transform: translateY(110%); padding:13px 16px; background: var(--dark); box-shadow:0 -8px 16px rgba(0, 16, 2, 0.23);}
.header-expanded {transform: translateY(0);}.stepper-overlay-fixed span{min-width:224px; backface-visibility:visible; flex: 1; image-rendering:auto; font-size:.85.04rem;}
.detail-avatar {display: flex; align-items: center; justify-content: space-between; gap:15px; flex-wrap: wrap;}
.stepper-overlay-fixed a {color: var(--accent); tab-size:4; transform-style:flat; text-decoration:underline;}/* --- Modals (popups at the very bottom, opened via #) --- */
.snackbar-dark{align-items: flex-start; z-index: 1300; padding:6vh 17px; overflow-y: auto; inset:0; display: none; justify-content: center; position: fixed; background:rgba(21, 3, 36, 0.7);}
.snackbar-dark:target {display: flex;}          /* no-JS fallback via # */
.c-skeleton-zone {hyphens:manual; display: flex;}            /* JS-enhanced state   */
.screenFill {border-radius: var(--rad-l); position: relative; box-shadow:0 16px 43px rgba(0, 6, 0, 0.32); background: var(--dark); width:100%; padding:36px 30px; max-width:422px;}
.o-toolbar-close {background: var(--paper);}
.search-odd {display: block; color:#site-page; text-align: center; margin-bottom:23px; font-size:1.17rem; font-weight:bold;}
.o-toolbar-close .search-odd {color: var(--ink);}.input-header{top:14px; color:rgba(255, 241, 255, 0.44); right:12px; cursor: pointer; width:31px; display: inline-flex; height:26px; position: absolute; border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px; justify-content: center; align-items: center;}
.input-header:hover {color:#site-page; background:rgba(248, 255, 254, 0.16);}
.o-toolbar-close .input-header {color: var(--faint);}
.o-toolbar-close .input-header:hover {color: var(--ink); background: var(--soft);}
.input-header svg {width:18px; height:16px;}
.snackbar-dark .c-hero-dot {border-color:rgba(255, 249, 244, 0.13); background:rgba(244, 243, 239, 0.01); margin-bottom:8px; color:#site-page;}
.snackbar-dark .c-hero-dot::placeholder {color:rgba(240, 255, 255, 0.42);}.snackbar-dark .c-hero-dot:focus{background:rgba(255, 252, 255, 0.18); box-shadow:none; border-color:rgba(255, 240, 248, 0.42);}
.o-toolbar-close .c-hero-dot {border-color: var(--line); color: var(--text); background: var(--wash);}
.o-toolbar-close .c-hero-dot::placeholder {color: var(--faint);}
.snackbar-dark .tabs-input-sparse {margin-top:4px; mix-blend-mode:normal; text-underline-offset:auto;}
.wrapper-popover {justify-content: space-between; margin-top:12px; display: flex; font-size:.83.93rem;}
.pl-16 {print-color-adjust:economy; font-size:.8.92rem; font-variant-caps:normal; margin:-4px 0 18px; text-align: center; color: var(--muted);}
.sidebarBackdrop {justify-content: center;}

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

/* --- Responsive --- */
@media (max-width: 640px) {
  .pagination-number-hover {margin-top:18px; padding:21px 24px;}
  .position-screen {font-size:1.52rem; hyphens:manual;}
  .sidebar-secondary {flex-direction: column; align-items: flex-start;}
  .sidebar-summary-danger {grid-template-columns: 1fr;}
  .detail-avatar {text-align: center; word-spacing:normal; flex-direction: column;}
  .screenFill {tab-size:4; padding:28px 26px;}
}
