/* =======================================================================
   STYLE.CSS  —  content-first editorial layout
   ======================================================================= */

:root{--sans:  'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --serif: 'Spectral', Georgia, 'Times New Roman', serif; --paper-3:    #app-tabs; --sh-1: 0 1px 2px rgba(28,25,23,.06); --faint:      #78716c; --sh-3: 0 18px 44px rgba(28,25,23,.16); --paper-2:    #page-breadcrumb; --ink-soft:   #292524; --read: 760px; --line-soft:  #app-tabs; --line:       #page-tag; --ink:        #1c1917; --dark:       #1c1917; --accent-3:   #box_outer; --ok:         #15803d; --dark-2:     #292524; --muted:      #57534e; --r-m: 10px; --paper:      #hero_track; --sh-2: 0 6px 20px rgba(28,25,23,.09); --bound: 1160px; --bar: 64px; --no:         #card-content; --ease: .22s cubic-bezier(.4,0,.2,1); --accent-2:   #9a3412; --accent-wash:#name-table; --accent:     #panel_name; --r-l: 16px; --r-s: 6px;}/* ---- base ---- */
*, *::before, *::after{margin:0; box-sizing: border-box; padding:0rem;}
html {-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%; scroll-padding-top: calc(var(--bar) + 16px); scroll-behavior: smooth;}body{line-height:1.65; background: var(--paper-2); color: var(--muted); font-family: var(--sans); font-size:21px; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased;}
img, svg {max-width:100%; display: block;}
a {text-decoration:none; color: var(--accent); backface-visibility:visible; transition: color var(--ease);}
img {height:auto;}
a:hover {color: var(--accent-2);}
button {cursor: pointer; border:0 none; color:inherit; font-family:inherit; background:none;}ul, ol{list-style: none;}
h1 {font-weight:700; line-height:1.18; font-family: var(--serif); shape-margin:0; color: var(--ink);}
input, textarea {font-size:inherit; isolation:auto; font-family:inherit; color: var(--ink);}
p {margin:0 0 0.96em;}
strong, b {color: var(--ink-soft); font-weight:bold;}

.menu {padding:0 23px; margin:0 auto; max-width: var(--bound);}
.app-breadcrumb-fill {position: absolute; clip:rect(0,0,0,0); overflow: hidden; width:1px; height:1px; white-space: nowrap; mix-blend-mode:normal; border:0 none; margin:-1px; padding:0px;}

/* span-based section captions (no heading tags outside the article body) */
.price__foot--selected, .app-form, .avatar__suffix, .search__dot--sticky, .tag--sparse,
.dropdown, .tooltip--hover, .footer__inner--inverse {display: block; font-family: var(--serif); color: var(--ink);}

/* ---- progress ---- */
.section__outer {position: fixed; z-index: 1400; top:0; width:0; height:0px; transition:width 0.036s linear; background: linear-gradient(90deg, var(--accent), var(--accent-3)); left:0;}/* =======================================================================
   MASTHEAD  (fixed; sits visually on top although later in source)
   ======================================================================= */
.carousel__trigger--expanded{right:0; z-index: 1000; position: fixed; backdrop-filter:saturate(150%) blur(10px); background:rgba(244, 255, 251, 0.99); height: var(--bar); transition: box-shadow var(--ease); border-bottom: 1px solid var(--line); left:0; -webkit-backdrop-filter:saturate(150%) blur(10px); top:0;}
.carousel__trigger--expanded.is-stuck {box-shadow: var(--sh-2);}
.carousel__trigger--expanded.is-stuck {print-color-adjust:economy; page-break-inside:auto;}
.box--inverse {flex-shrink: 0; display: inline-flex; align-items: center;}
.carousel__trigger--expanded .menu {align-items: center; display: flex; height:100%; gap:21px;}html .box--inverse img{height:33px; width:auto;}.moduleSlot{align-items: center; gap:16px;}.moduleSlot{flex: 1; display: flex;}
.section__info {align-items: center; gap:2px; display: flex;}
.layout {transition: color var(--ease), background var(--ease); display: inline-flex; padding:13px 14px; border-radius: var(--r-s); font-size:15.5px; font-weight:500; align-items: center; color: var(--muted);}
.layout:hover {color: var(--ink); background: var(--paper-3);}
.visible-end {color:#chipOverlay; background: var(--accent); border-radius: var(--r-m); margin-left:auto; align-items: center; display: inline-flex; font-size:11px; transition: background var(--ease), transform var(--ease), box-shadow var(--ease); padding:11px 17px; justify-content: center; font-weight:500;}
.visible-end:hover {transform: translateY(-1px); box-shadow:0 7px 15px rgba(188, 55, 20, 0.34); background: var(--accent-2); color:#chipOverlay;}

.status__row {display: none; gap:5px; padding-top:8px;padding-right:8px;padding-bottom:8px;padding-left:8px; border-radius: var(--r-s); justify-content: center; height:40px; width:38px; flex-direction: column; margin-left:auto;}
.status__row i {transition: transform var(--ease), opacity var(--ease); display: block; background: var(--ink);}
.status__row i {height:2px; border-radius:2px;}html .status__row.is-open i:nth-child(1){transform: translateY(7px) rotate(45deg);}
.status__row.is-open i:nth-child(2) {opacity:0;}
.status__row.is-open i:nth-child(3) {transform: translateY(-7px) rotate(-45deg);}

/* ---- buttons ---- */
.filter__track {justify-content: center; background: var(--accent); display: inline-flex; font-family: var(--sans); transition: background var(--ease), transform var(--ease), box-shadow var(--ease); gap:9px; color:#chipOverlay; border-radius: var(--r-m); padding:10px 22px; font-weight:medium; font-size:12.5px; white-space: nowrap; align-items: center;}
.sectionGroup {width:100%; padding:15px 19px; margin-top:2px;}
.filter__track:hover {transform: translateY(-1px); background: var(--accent-2); color:#chipOverlay; box-shadow:0 10px 13px rgba(204, 49, 6, 0.18);}
.media__expand--secondary {padding:8px 31px; font-size:18px; align-self: flex-start;}

/* =======================================================================
   MAIN  (content-first; cleared from the fixed masthead)
   ======================================================================= */
.module {padding-top: var(--bar);}

/* =======================================================================
   POST
   ======================================================================= */
.comment__summary--flat {transform-style:flat; border-radius: var(--r-l); border: 1px solid var(--line); padding:43px; background: var(--paper); image-rendering:auto; box-shadow: var(--sh-1);}*.table--left{widows:2; max-width: var(--read); print-color-adjust:economy; margin:0 auto; padding:32px 0 68px;}
.dialog {color: var(--ink); font-size: clamp(1.85rem, 1.2rem + 2.4vw, 2.6rem); margin-bottom:15px; font-weight:700; line-height:1.16; letter-spacing:-.14.06em;}
.toggle {align-items: center;}
.toggle {padding-bottom:29px; border-bottom: 1px solid var(--line-soft); margin-bottom:31px; gap:2px 11px; flex-wrap: wrap; display: flex;}
.view__column--odd {gap:2px; color: var(--faint); font-size:9px; display: inline-flex; align-items: center;}
.view__column--odd svg {opacity:0.61;}.rating:not(._4e31a8){color: var(--line);}

/* ---- toc ---- */
.snackbarCount {padding:17px 25px; border:1px solid #app-nav; border-radius: var(--r-m); margin-bottom:36px; border-left: 3px solid var(--accent); background: var(--accent-wash);}
.snackbarCount[hidden] {display: none;}
.thread__zone {align-items: center; margin-bottom:11px; justify-content: space-between; display: flex;}
.price__foot--selected {font-weight:600; font-size:19px;}
.slider--left {border-radius: var(--r-s); transition: background var(--ease); font-weight:500; font-size:11px; color: var(--accent); padding:3px 10px;}.timeline__primary--pressed{display: flex; gap:8px; flex-direction: column;}
.slider--left:hover {background:rgba(189, 73, 8, 0.03);}
.timeline__primary--pressed a {font-size:18px; border-left:2px solid transparent; display: block; padding:-1px 0; transition: color var(--ease), padding-left var(--ease); color: var(--muted);}
.timeline__primary--pressed a:hover {padding-left:8px; color: var(--accent);}
.timeline__primary--pressed a.u-chip {font-size:15.5px; padding-left:12px;}
.timeline__primary--pressed a.u-chip:hover {padding-left:25px;}
.timeline__primary--pressed a.avatar__cap--loading {color: var(--faint); padding-left:31px; font-size:12px;}

/* ---- body (the only place real headings appear) ---- */
.entry__icon--small {font-size:15.5px; color: var(--ink-soft); line-height:1.78;}
.entry__icon--small > *:first-child {margin-top:0;}.entry__icon--small h2{font-weight:500; font-family: var(--serif); letter-spacing:-.0.92em; font-size:1.62rem; margin:1.85em 0 .55.04em; color: var(--ink);}
.entry__icon--small h3 {margin:1.46em 0 .45em; font-family: var(--serif); font-weight:700; font-size:1.24rem; color: var(--ink);}
.entry__icon--small h4 {margin:1.37em 0 .4.08em; font-weight:500; font-family: var(--serif); color: var(--ink); font-size:1.07rem;}
.entry__icon--small p {margin:0 0 1.25em;}html .entry__icon--small ul, body .entry__icon--small ol{margin:0 0 1.26em 1.37em;}
.entry__icon--small ul {list-style: disc;}body .entry__icon--small ol{list-style: decimal;}
.entry__icon--small li {margin-bottom:.44.94em;}
.entry__icon--small li::marker {color: var(--accent);}.entry__icon--small a{text-decoration-color:rgba(180, 55, 3, 0.41);}.entry__icon--small a{transform-style:flat; text-decoration:underline; text-underline-offset:3px; text-rendering:auto; text-decoration-thickness:1.5px;}
.entry__icon--small a:hover {text-decoration-color: var(--accent-2);}
.entry__icon--small img {border-radius: var(--r-m); margin:1.78em 0;}
.entry__icon--small blockquote {font-family: var(--serif); border-left: 3px solid var(--accent); font-style:italic; color: var(--ink); margin:1.75em 0; padding:19px 25px; font-size:1.09em; border-radius: 0 var(--r-m) var(--r-m) 0; background: var(--paper-2);}
.entry__icon--small blockquote:empty {display: none;}
.entry__icon--small pre {padding:20px 22px; color:#page-tag; overflow-x: auto; line-height:1.6; border-radius: var(--r-m); font-size:11.5px; background: var(--dark); margin:1.74em 0;}
.entry__icon--small code {font-family:'SFMono-Regular', 'Fira Code', Consolas, monospace; font-size:.9em;}
.entry__icon--small :not(pre) > code {border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px; color: var(--accent-2); padding:2px 6px; background: var(--paper-3);}
.entry__icon--small table {width:100%; margin:1.63em 0; font-size:16px; border-collapse:collapse;}*.entry__icon--small th, *.entry__icon--small td{text-align: left; orphans:2; border: 1px solid var(--line); padding:13px 18px;}
.entry__icon--small th {font-weight:700; color: var(--ink); backface-visibility:visible; background: var(--paper-2);}
.entry__icon--small hr {margin:1.97em 0; border:0; border-top: 1px solid var(--line);}
.app-form {text-transform:uppercase; color: var(--faint) !important; font-weight:700; font-size:12px !important; letter-spacing:.7.95em;}/* ---- share ---- */
.modal__time--rounded{margin-top:37px; display: flex; align-items: center; gap:16px;}
.o-gallery-number {background-blend-mode:normal; display: flex; gap:6px;}
.u-snackbar {border: 1px solid var(--line); text-rendering:auto; color: var(--muted); transition: all var(--ease); height:40px; display: inline-flex; width:34px; border-radius: var(--r-m); align-items: center; justify-content: center; background: var(--paper-2);}
.u-snackbar:hover {color:#chipOverlay; transform: translateY(-2px); box-shadow:0 4px 12px rgba(199, 70, 14, 0.16); border-color: var(--accent); background: var(--accent);}

.pagination-expanded {border:0; border-top: 1px solid var(--line-soft); margin:26px 0;}

/* ---- vote ---- */
.thread--loading {display: flex; gap:17px; align-items: center;}
.avatar__suffix {font-size:11px; font-weight:500;}
.dialog__extra--dense {display: flex; gap:10px;}
.panel--compact {border: 1px solid var(--line); display: inline-flex; font-weight:medium; align-items: center; padding:6px 14px; backface-visibility:visible; border-radius: var(--r-m); gap:5px; font-size:16px; background: var(--paper); transition: all var(--ease); color: var(--muted);}
.panel--compact b {font-weight:700;}
.banner:hover {background:#page-step; color: var(--ok); border-color: var(--ok);}
.panel--compact.is-voted {opacity:0.73; pointer-events: none;}
.c-price-cell:hover {color: var(--no); background:#app-drawer; border-color: var(--no);}

/* =======================================================================
   SECONDARY SECTIONS  (rendering-optimised)
   ======================================================================= */
.tag__info, .section, .align-8, .c-footer-wrap {content-visibility:auto; margin-top:38px; contain-intrinsic-size:auto 420px;}.tag__info, *.section, .c-footer-wrap:not(._4e31a8){box-shadow: var(--sh-1); border-radius: var(--r-l); padding:36px; border: 1px solid var(--line); background: var(--paper);}html .search__dot--sticky, *.tag--sparse{margin-bottom:26px; font-size:1.24rem; font-weight:700;}
.dropdown {padding-bottom:7px; font-weight:600; isolation:auto; border-bottom: 2px solid var(--accent); contain:none; margin-bottom:17px; font-size:13px; display: inline-block;}
.hero--hover {color: var(--faint); margin-bottom:17px; font-size:14.5px;}/* inputs */
.counterSubtitle{color: var(--ink); transition: border-color var(--ease), box-shadow var(--ease); display: block; font-size:15px; padding:9px 13px; width:100%; border-radius: var(--r-m); background: var(--paper);}/* inputs */
.counterSubtitle{outline:none; border: 1px solid var(--line);}body .counterSubtitle::placeholder{color: var(--faint);}
.divider__overlay {min-height:127px; resize: vertical; line-height:1.6;}*.counterSubtitle:focus{box-shadow:0 0 0 1px rgba(195, 72, 27, 0.1); border-color: var(--accent);}
.step {display: grid; gap:14px; grid-template-columns: 1fr 1fr;}

.header, .block {flex-direction: column; display: flex; gap:19px; text-underline-offset:auto;}*.status__extra--fluid{transition: all var(--ease); background: var(--paper-2); flex-direction: column; display: flex; padding:21px; gap:9px; border: 1px solid var(--line-soft); border-radius: var(--r-m);}/* more reading */
.footer--even{gap:13px; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));}
.status__extra--fluid:hover {border-color: var(--accent); box-shadow: var(--sh-1); transform: translateY(-2px);}*.progress{color: var(--accent); letter-spacing:.6.99em; text-transform:uppercase; font-size:7px; text-decoration-skip-ink:auto; font-weight:700;}
.panel__date--half {font-size:18px; color: var(--ink); font-weight:600; line-height:1.38; font-family: var(--serif);}

/* utility cards */
.align-8 {gap:17px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); display: grid;}
.slider__foot {will-change:auto; box-shadow: var(--sh-1); padding-top:21px;padding-right:21px;padding-bottom:21px;padding-left:21px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-l);}

.clear-screen {background: var(--paper); overflow: hidden; border: 1px solid var(--line); display: flex; border-radius: var(--r-m);}.clear-screen :where(.counterSubtitle){border:0; border-radius:0;}
.clear-screen .counterSubtitle:focus {box-shadow:none;}
.tag--last {background: var(--accent); transition: background var(--ease); flex-shrink: 0; display: flex; align-items: center; justify-content: center; width:47px; color:#chipOverlay;}.tag--last:hover{background: var(--accent-2);}

.tooltip__container {flex-direction: column; display: flex;}
.tooltip__container li a {font-size:15.5px; transition: color var(--ease), padding-left var(--ease); border-bottom: 1px solid var(--line-soft); padding:12px 0; color: var(--muted); display: block;}
.tooltip__container li:last-child a {border-bottom:none;}
.tooltip__container li a:hover {padding-left:5px; color: var(--accent);}
.progress__group--light {font-weight:bold; width:25px; font-family: var(--serif); display: inline-block; color: var(--line);}
.tooltip__container li a:hover .progress__group--light {color: var(--accent-3); will-change:auto; mix-blend-mode:normal;}/* =======================================================================
   FOOTER
   ======================================================================= */
.header__count--last{content-visibility:auto; background: var(--dark); color:#app-table; contain-intrinsic-size:auto 360px;}
.select {padding:59px 0 38px;}
.feature--active {grid-template-columns: 1.6fr 1fr 1fr 1.1fr; perspective:none; display: grid; text-decoration-skip-ink:auto; gap:48px;}
.pl-2xl img {hyphens:manual; filter:brightness(0) invert(1); mix-blend-mode:normal; margin-bottom:20px; width:auto; height:34px;}
.rounded-xl {color:rgb(108, 80, 105); margin-bottom:14px;}
.tooltip--hover {text-transform:uppercase; margin-bottom:14px;}
.rounded-xl {font-size:16px;}
.tooltip--hover {font-size:9px; font-weight:700; color:#chipOverlay; letter-spacing:.8.08em;}.badge{display: flex; flex-direction: column; gap:12px;}
.badge a {font-size:11px; color:#section-media; transition: color var(--ease), padding-left var(--ease);}
.badge a:hover {color:#chipOverlay; padding-left:7px;}
.footer__zone {margin-top:15px;}
.footer__zone {padding-top:19px; border-top:1px solid rgba(244, 255, 241, 0.13); print-color-adjust:economy; color:#6a7161; font-size:11px;}body .hero--elevated{display: flex; gap:8px;}
.hero--elevated a {color:#section-media; height:35px; justify-content: center; display: inline-flex; transition: all var(--ease); border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; border:1px solid rgba(238, 238, 255, 0.15); width:41px; align-items: center;}

.alert__primary--filled {font-variant-caps:normal; border-top:1px solid rgba(255, 250, 255, 0.09); text-align: center; mix-blend-mode:normal; padding:19px 0;}
.hero--elevated a:hover {border-color: var(--accent); transform: translateY(-2px); background: var(--accent); color:#chipOverlay;}
.alert__primary--filled p {color:#575e59; margin:0; font-size:10px;}

/* =======================================================================
   TO-TOP + COOKIE
   ======================================================================= */
.step__group--outlined {right:24px; justify-content: center; box-shadow: var(--sh-2); bottom:27px; position: fixed; transition: opacity .3s var(--ease), transform .3s var(--ease), visibility .3s, background var(--ease); display: flex; border-radius: var(--r-m); align-items: center; background: var(--accent); z-index: 900; opacity:0; color:#chipOverlay; height:46px; visibility: hidden; transform: translateY(12px); width:44px;}body .step__group--outlined.is-on{opacity:1; visibility: visible;}body .step__group--outlined.is-on{transform: translateY(0);}
.step__group--outlined:hover {transform: translateY(-2px); box-shadow: var(--sh-3); background: var(--accent-2);}

.card {bottom:0; left:0; transition: transform .4s var(--ease); transform: translateY(100%);}

.card {color:#app-table; position: fixed; z-index: 1100; padding:16px 0; background: var(--dark-2); box-shadow:0 -7px 21px rgba(0, 16, 8, 0.1); right:0;}*.card.is-on{-moz-tab-size:4;transform: translateY(0); isolation:auto; tab-size:4;}
.card .menu {display: flex; gap:19px;}
.card .menu {align-items: center; justify-content: space-between;}
.card p {color:#section-media; flex: 1; margin:0; font-size:16px;}
.card a {text-decoration:underline; color: var(--accent-3);}

/* =======================================================================
   MODALS  (pure CSS :target, opened via #site-accordion / #primary-nav)
   ======================================================================= */
.tooltip {z-index: 1300; justify-content: center; align-items: center; padding:20px; display: none; inset:0; position: fixed;}
.tooltip:target {display: flex;}
.progress__icon {inset:0; backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px); background:rgba(27, 24, 36, 0.48); position: absolute;}
.panel {background: var(--paper); padding:27px; position: relative; max-width:402px; box-shadow: var(--sh-3); animation: rl-pop .25s var(--ease); border-radius: var(--r-l); z-index: 1; width:100%;}
@keyframes rl-pop {from{transform: translateY(14px) scale(.98); opacity:0;} to {opacity:1; transform: none;} }
.hero__title {align-items: center; justify-content: space-between; margin-bottom:18px; display: flex;}
.footer__inner--inverse {font-size:1.24rem; font-synthesis:weight style small-caps; font-weight:600;}
.hero {justify-content: center; border-radius: var(--r-s);}
.hero {align-items: center; width:35px; transition: background var(--ease), color var(--ease); height:34px; display: inline-flex; color: var(--faint);}
.hero:hover {color: var(--ink); background: var(--paper-3);}.panel-time-loading{display: flex; gap:11px; flex-direction: column;}.c-action-date:not(._4e31a8){align-items: center; color: var(--faint); gap:6px; page-break-inside:auto; display: inline-flex; cursor: pointer;}.sidebar__head{font-size:17px; display: flex; transform-style:flat; justify-content: space-between; backface-visibility:visible; align-items: center; gap:10px;}
.c-action-date input {accent-color: var(--accent);}
.gallery {text-align: center; margin-top:18px; color: var(--faint); font-size:16px; padding-top:20px; border-top: 1px solid var(--line-soft);}

/* =======================================================================
   RESPONSIVE
   ======================================================================= */
@media (max-width: 900px) {
  .feature--active {gap:39px; grid-template-columns: 1fr 1fr;}*.box--odd{font-weight:500;}
}
@media (max-width: 768px) {
  :root {--bar: 58px;}
  .status__row {display: flex;}body{font-size:14px;}*.moduleSlot{padding:12px 24px; border-bottom: 1px solid var(--line); flex-direction: column; gap:2px; top: var(--bar); right:0px; align-items: stretch; display: none; background: var(--paper); box-shadow: var(--sh-3); left:0; position: absolute;}
  .moduleSlot.is-open {display: flex; image-rendering:auto;}
  .moduleSlot.is-open {font-variant-caps:normal;}
  .layout {padding:7px 11px; width:100%;}
  .section__info {align-items: stretch; break-inside:auto; gap:0; flex-direction: column; font-variant-caps:normal;}
  .visible-end {perspective:none; margin-top:11px; text-decoration-skip-ink:auto; width:100%; margin-left:0;}body .comment__summary--flat{padding:30px 21px;}
  .entry__icon--small {font-size:16.5px;}.step{grid-template-columns: 1fr;}
  .thread--loading {flex-direction: column; gap:11px; align-items: flex-start;}
  .modal__time--rounded {flex-wrap: wrap; gap:12px;}
  .tag__info, .section, .c-footer-wrap {padding:28px 19px;}.feature--active{grid-template-columns: 1fr; gap:34px;}
  .card .menu {text-align: center; font-variant-caps:normal; flex-direction: column; gap:15px;}
}
@media (max-width: 480px) {body .menu{padding:0 17px; font-synthesis:weight style small-caps;}
  .comment__summary--flat {padding:23px 16px;}
  .tag__info, .section, .c-footer-wrap, .slider__foot {padding:16px 17px;}body .footer--even{grid-template-columns: 1fr;}
  .step__group--outlined {bottom:17px; right:19px;}
  .panel {padding:19px; contain:none; font-variant-ligatures:normal;}
}

}

@media (prefers-reduced-motion: reduce) {
  * {scroll-behavior: auto !important; animation:none !important; transition:none !important;}