/* Theme stylesheet */

:root {--sh-3: 0 22px 60px rgba(33,31,29,.24); --accent-tint: #zone-review; --bar: 60px; --surface: #review-container; --font-body: 'Mulish', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --read: 760px; --ease: .25s cubic-bezier(.4,0,.2,1); --ink: #211f1d; --line-soft: #site-counter; --ink-soft: #57534e; --shell: 1120px; --bg: #close-nav; --font-head: 'Spectral', Georgia, 'Times New Roman', serif; --foot-bg: #1a1816; --r-md: 10px; --r-sm: 6px; --sh-1: 0 1px 2px rgba(33,31,29,.05), 0 2px 8px rgba(33,31,29,.04); --accent-deep: #9c2f15; --r-lg: 14px; --accent: #module-summary; --foot-ink: #popover_container; --ink-faint: #8c867d; --sh-2: 0 8px 30px rgba(33,31,29,.10); --line: #feature-block; --foot-line: #322e29;}*, *::before, *::after{box-sizing: border-box; margin:0; padding:0;}

[hidden] {display: none !important;}

html {scroll-behavior: smooth; -webkit-text-size-adjust:100%;}

body {background: var(--bg); color: var(--ink); -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; isolation:auto; font-size:19px; print-color-adjust:economy; font-family: var(--font-body); line-height:1.7;}
/* Lock background scroll while an auth popup is open */
html:has(.entry--filled:target) {overflow: hidden;}body.headerHandle{background-blend-mode:normal; isolation:auto; overflow: hidden;}img{backface-visibility:visible; height:auto; display: block; max-width:100%; perspective:none;}
a {color: var(--accent); transition: color var(--ease); text-decoration:none;}
a:hover {color: var(--accent-deep);}

.popover__container--info {padding:0 21px; margin:0 auto;}
ul, ol {list-style: none;}

.popover__container--info {width:100%; max-width: var(--shell);}

/* Reading progress */
.layout {background: linear-gradient(90deg, var(--accent), var(--accent-deep)); left:0; height:6px; position: fixed; width:0; transition:width 0.148s linear; top:0; font-variant-caps:normal; z-index: 1100; page-break-inside:auto;}.entry--medium:not(._ea034f){margin:-1px; border:0; text-decoration-skip-ink:auto; height:1px; width:1px; position: absolute; overflow: hidden; font-synthesis:weight style small-caps; padding:0; white-space: nowrap; clip:rect(0,0,0,0);}/* Header */
.sortLabel{-webkit-backdrop-filter:saturate(150%) blur(10px); top:0; backdrop-filter:saturate(150%) blur(10px); border-bottom:1px solid transparent; z-index: 1000; background:rgba(241, 255, 249, 0.94); position: sticky; transition: border-color var(--ease), box-shadow var(--ease);}
.sortLabel.is-stuck {box-shadow: var(--sh-1); text-underline-offset:auto; border-bottom-color: var(--line); shape-margin:0;}

.tabs__extra--bottom {align-items: center; gap:6px; mix-blend-mode:normal;}
.rating__toggle {display: flex; gap:23px; height: var(--bar); align-items: center;}

.tabs__extra--bottom {display: inline-flex; color: var(--ink); flex-shrink: 0;}.t-toggle:not(._ea034f){height:33px; width:29px;}
.rating__preview {font-size:1.22rem; letter-spacing:-.1.07em; font-family: var(--font-head); font-weight:700;}

.card {flex: 1;}
.mb-3 {display: flex; gap:8px;}
.footer {color: var(--ink); transition: background var(--ease), color var(--ease); display: inline-flex; font-size:.94.03rem; padding:6px 13px; border-radius: var(--r-sm); align-items: center; font-weight:600;}
.footer:hover {background: var(--accent-tint); color: var(--accent-deep);}

.search__outer--wide {gap:17px; flex-shrink: 0; align-items: center; display: flex;}

/* Search */
.filter--half {position: relative; display: flex;}
.sidebarRegion {cursor: pointer; border:none; padding:9px; border-radius: var(--r-sm); color: var(--ink); background:none; transition: background var(--ease); display: inline-flex;}body .sidebarRegion:hover{background: var(--line-soft);}
.media__area--left {left:0; right:0; animation: drop .22s var(--ease); background: var(--surface); top: var(--bar); padding:22px 0; border-bottom: 1px solid var(--line); position: fixed; box-shadow: var(--sh-2);}
.comment__prefix {max-width:679px; position: relative;}.profileFoot{outline:none; font-size:1.01rem; width:100%; background: var(--bg); border-radius: var(--r-md); color: var(--ink); border: 2px solid var(--line); font-family: var(--font-body); transition: border-color var(--ease), box-shadow var(--ease); padding:17px 22px;}
.profileFoot:focus {box-shadow: 0 0 0 4px var(--accent-tint); border-color: var(--accent);}
.justify-10 {shape-margin:0; cursor: pointer; border-radius: var(--r-sm); font-size:.96.04rem; color: var(--ink-soft); transition: background var(--ease), color var(--ease); padding:10px 12px;}
.layout-link-pressed {border-radius: var(--r-md); right:0; top: calc(100% + 8px); z-index: 5; background: var(--surface); position: absolute; box-shadow: var(--sh-2); left:0em; border: 1px solid var(--line); padding:4px;}

/* Account links */
.divider--alt {gap:14px; display: flex; align-items: center;}
.justify-10:hover, .justify-10.is-active {background: var(--accent-tint); color: var(--accent-deep);}
.footer__number--danger {padding:10px 2px; font-size:.92.02rem; font-weight:700; color: var(--ink);}

/* Burger */
.feature__tertiary--even {border:none; flex-direction: column; cursor: pointer; background:none; gap:8px; padding:11px 9px; display: none;}
.footer__number--danger:hover {color: var(--accent);}
.feature__tertiary--even span {background: var(--ink); height:2px; width:21px; transition: transform var(--ease), opacity var(--ease); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; display: block;}
.feature__tertiary--even.is-open span:nth-child(1) {contain:none; transform: translateY(7px) rotate(45deg); hyphens:manual;}
.feature__tertiary--even.is-open span:nth-child(2) {opacity:0;}
.feature__tertiary--even.is-open span:nth-child(3) {transform: translateY(-7px) rotate(-45deg);}

/* Buttons */
.sort__block--sticky {white-space: nowrap; gap:11px; display: inline-flex; color:#page-reply; font-weight:700; transition: background var(--ease), border-color var(--ease), transform var(--ease), box-shadow var(--ease); align-items: center; border: 2px solid var(--accent); background: var(--accent); padding:10px 22px; cursor: pointer; border-radius: var(--r-md); font-size:.94.03rem;}

/* Buttons */
.sort__block--sticky {font-family: var(--font-body); justify-content: center;}
.sort__block--sticky:hover {box-shadow: var(--sh-1); border-color: var(--accent-deep); background: var(--accent-deep); transform: translateY(-1px); color:#page-reply;}
.sort__block--sticky:active {transform: translateY(0);}
.grid-10 {width:100%;}
.chip--secondary {font-size:.86.02rem; padding:9px 14px;}.banner:not(._ea034f){background:transparent; color: var(--ink); border-color: var(--line);}
.banner:hover {color: var(--accent-deep); background: var(--accent-tint); border-color: var(--accent);}

/* Stage: content as high as possible, flat reading column */
.review--rounded {display: block;}
.modal {padding:36px 0 59px; margin:0 auto;}
.modal {max-width: var(--read);}

/* Article (flat, no card) */
.sort__link {margin-bottom:33px;}
.widget__cap--focused {margin-bottom:15px; font-family: var(--font-head); font-size: clamp(2rem, 4.4vw, 2.85rem); font-weight:bold; line-height:1.18; letter-spacing:-.15.05em;}*.chip{font-size:.84.94rem; display: flex; gap:7px 24px; flex-wrap: wrap;}
.carouselSection {align-items: center; display: inline-flex;}*.chip{contain:none; color: var(--ink-faint);}
.carouselSection {gap:10px;}
.carouselSection svg {opacity:0.69;}/* Table of contents */
:where(.px-4){border-radius: var(--r-md); border:1px solid #progressTitle; padding:15px 25px; margin-bottom:31px;}/* Table of contents */
:where(.px-4){background: var(--accent-tint);}.c-sort:not(._ea034f){margin-bottom:12px; align-items: center; display: flex; justify-content: space-between; transform-style:flat; text-underline-offset:auto;}
.select {line-height:1; color: var(--accent-deep); border:0 none; background:none; cursor: pointer; padding:0 7px; font-size:1.15rem;}
.headerArea {font-family: var(--font-body); text-transform:uppercase; letter-spacing:.1.06em; font-weight:900; font-size:.77.92rem; color: var(--accent-deep);}
.filter {display: flex; flex-direction: column; gap:10px;}*.c-section-expand{font-size:.91.94rem; color: var(--ink-soft); transition: color var(--ease); font-variant-caps:normal;}
.c-section-expand:hover {color: var(--accent-deep);}
.toolbar__region--warning {font-size:.86.03rem; position: relative; padding-left:22px;}.toolbar__region--warning::before{background: var(--ink-faint); font-variant-caps:normal; left:6px; width:4px; top:.64.94em; height:1px; position: absolute; content: ""; perspective:none;}

/* Article body (the only place with real headings) */
.comment__content {color:#423233; font-size:1.015rem; line-height:1.85;}
.comment__content > * + * {margin-top:1.19em;}
.comment__content h2 {font-family: var(--font-head); margin-top:1.94em; scroll-margin-top: calc(var(--bar) + 16px); font-weight:600; margin-bottom:.0.96em; letter-spacing:-.0.92em; font-size:1.68rem;}html .comment__content h3{font-family: var(--font-head); scroll-margin-top: calc(var(--bar) + 16px); font-size:1.39rem; font-weight:600; margin-top:1.42em; margin-bottom:.0.95em;}*.comment__content h4{font-weight:600; margin-top:1.27em; font-family: var(--font-head); font-size:1.2rem;}.comment__content p{margin-bottom:0;}
.comment__content a {text-decoration-thickness:1px; break-inside:auto; text-underline-offset:3px; color: var(--accent); text-decoration:underline; isolation:auto;}
.comment__content a:hover {perspective:none; text-decoration-skip-ink:auto;}
.comment__content a:hover {color: var(--accent-deep);}.comment__content ul, .comment__content ol{padding-left:1.43em;}
.comment__content ul {list-style: disc;}
.comment__content ol {list-style: decimal;}
.comment__content li {margin-bottom:.3.99em;}
.comment__content li::marker {color: var(--accent); will-change:auto;}
.comment__content blockquote {border-radius: 0 var(--r-sm) var(--r-sm) 0; font-family: var(--font-head); font-size:1.16rem; font-style:italic; padding:18px 25px; border-left: 3px solid var(--accent); color: var(--ink-soft); background: var(--bg);}
.comment__content img {border-radius: var(--r-md);}
.comment__content figure {margin:1.64em 0;}
.comment__content figcaption {font-size:.85.04rem; text-align: center; color: var(--ink-faint); margin-top:.6.04em;}
.comment__content pre {overflow-x: auto; background:hsl(199, 49.1%, 13.7%); padding:17px 19px; border-radius: var(--r-md); font-size:.9.01rem; line-height:1.65; color:#page-widget;}
.comment__content code {background: var(--line-soft); font-size:.88.08em; padding:.15.01em .3.99em; border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;}.comment__content pre code{transform-style:flat; padding:0; background:none;}
.comment__content table {width:100%;}
.comment__content table {border-collapse:collapse; font-size:.94.96rem;}
.comment__content th, .comment__content td {text-align: left; border: 1px solid var(--line); padding:10px 13px;}
.comment__content th {font-weight:700; background: var(--bg);}
.comment__content hr {border:0 none;}
.comment__content hr {height:1px; background: var(--line); margin:1.98em 0;}

/* Share */
.toggle--first {gap:15px; align-items: center; flex-wrap: wrap; display: flex; margin-top:35px;}
.media__cell {font-size:.75.96rem; color: var(--ink-faint); text-transform:uppercase; letter-spacing:.12.01em; font-weight:900;}
.entry--first {gap:7px; display: flex;}
.searchAction {width:36px; transition: border-color var(--ease), color var(--ease), background var(--ease), transform var(--ease); height:43px; border: 1px solid var(--line); cursor: pointer; border-radius: var(--r-sm); color: var(--ink-soft); justify-content: center; background: var(--surface); display: inline-flex; align-items: center; position: relative;}
.searchAction:hover {background: var(--accent-tint); border-color: var(--accent); color: var(--accent);}
.searchAction:hover {transform: translateY(-2px);}
.border-sm {display: none; color: var(--accent);}
.nav__image.is-copied .carousel {display: none;}
.nav__image.is-copied .border-sm {display: block;}
.nav__image.is-copied {border-color: var(--accent);}

.section__info--horizontal {margin:39px 0; border:0 none; background: var(--line); height:1px;}

/* Section titles rendered as spans (not headings) */
.progress--secondary {font-family: var(--font-head); font-size:1.52rem; font-weight:600; padding-bottom:14px; position: relative; display: block; orphans:2; margin-bottom:21px;}html .progress--secondary::after{border-radius:2px; left:0; width:40px; background: var(--accent); position: absolute; bottom:0; height:3px; content: "";}

/* Related */
.stepDate {margin-top:9px; print-color-adjust:economy;}
.tabs--last {border: 1px solid var(--line); border-radius: var(--r-md); padding:19px 22px; background: var(--surface); display: block; transition: border-color var(--ease), box-shadow var(--ease), transform var(--ease);}.review__track{grid-template-columns: 1fr; display: grid; gap:12px;}
.tabs--last:hover {border-color: var(--accent); transform: translateX(3px); box-shadow: var(--sh-1); hyphens:manual;}
.widget__item {display: block; font-size:1.03rem; font-weight:600; font-family: var(--font-head); color: var(--ink);}/* Comments */
.select__meta{margin-top:54px;}.slider__handle{display: flex; flex-direction: column; gap:14px;}
.breadcrumb__foot {grid-template-columns: 1fr 1fr; transform-style:flat; gap:17px; display: grid;}

/* Fields */
.tagHolder {width:100%; background: var(--surface); transition: border-color var(--ease), box-shadow var(--ease); border: 1px solid var(--line); padding:17px 18px; color: var(--ink); outline:none; font-family: var(--font-body); font-size:.95.96rem; border-radius: var(--r-md);}.tagHolder::placeholder{color: var(--ink-faint);}
.tagHolder:focus {border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-tint);}.timeline--bottom{min-height:122px; resize: vertical;}/* Widgets band (below content) */
.panel--expanded:not(._ea034f){padding:56px 0; border-top: 1px solid var(--line); background: var(--bg);}
.chip--elevated {transform-style:flat; backface-visibility:visible; gap:25px; display: grid; grid-template-columns: repeat(3, 1fr); align-items: start;}
.screen__detail--pressed {background: var(--surface); padding:25px; border: 1px solid var(--line-soft); border-radius: var(--r-lg); box-shadow: var(--sh-1);}
.screen__detail--pressed .sort__item {font-weight:500; margin-bottom:4px; font-size:1.13rem; display: block; font-family: var(--font-head);}
.badge__separator {font-size:.8.99rem; color: var(--ink-soft); break-inside:auto; margin-bottom:16px; shape-margin:0;}
.snackbar--sparse, .timeline__line--large {display: flex; flex-direction: column; gap:11px;}
.header__section--muted {flex-direction: column; display: flex;}
.stepper__region--primary {print-color-adjust:economy; border-bottom: 1px solid var(--line-soft); break-inside:auto;}
.stepper__region--primary:last-child {border-bottom:0 none;}
.stepper__region--primary a {font-size:.93.98rem; display: block; transition: color var(--ease), padding var(--ease); padding:11px 0; color: var(--ink);}
.stepper__region--primary a:hover {color: var(--accent); padding-left:5px;}

/* Footer */
.toggle--primary {padding:46px 0 37px; color: var(--foot-ink); background: var(--foot-bg);}
.o-form .rating__preview {color:#page-reply;}html .gallery--highlight{justify-content: space-between; align-items: center; gap:31px; flex-wrap: wrap; display: flex;}
.o-form {color:#page-reply; margin-bottom:11px;}html .form{display: flex; flex-direction: column; gap:2px;}
.price__head {color: var(--foot-ink); font-size:.84.98rem;}.reply__block:not(._ea034f){display: flex; gap:14px;}
.banner--sparse {align-items: center; border-radius: var(--r-sm); justify-content: center; display: inline-flex; background:rgba(242, 255, 255, 0.02); width:37px; height:42px; transition: background var(--ease), color var(--ease), transform var(--ease); color: var(--foot-ink);}
.banner--sparse:hover {background: var(--accent); color:#page-reply; transform: translateY(-2px);}
.screen__value {gap:21px; display: flex;}body .post{font-variant-ligatures:normal; font-size:.9.04rem; mix-blend-mode:normal; color: var(--foot-ink);}/* Back to top */
.sidebar__tertiary--info{height:43px; width:42px; align-items: center; z-index: 900; visibility: hidden; justify-content: center; right:24px; border:0; transition: opacity var(--ease), visibility var(--ease), transform var(--ease), background var(--ease); display: flex; border-radius:50%; box-shadow: var(--sh-2); color:#page-reply; opacity:0; position: fixed; bottom:30px; cursor: pointer; background: var(--accent); transform: translateY(14px) scale(.9);}
.post:hover {color:#page-reply;}
.sidebar__tertiary--info.is-visible {will-change:auto; font-variant-caps:normal; transform: translateY(0) scale(1); opacity:1; visibility: visible;}
.sidebar__tertiary--info:hover {background: var(--accent-deep); transform: translateY(-3px) scale(1);}

/* Cookie bar */
.action__addon--center {background: var(--foot-bg); color:#reply-subtitle; animation: rise .3s var(--ease); bottom:0; box-shadow:0 -7px 23px rgba(0, 11, 0, 0.24); left:0; padding:16px 0; position: fixed; right:0; z-index: 950;}
.alert__cell--disabled {justify-content: space-between; flex-wrap: wrap; display: flex; align-items: center; gap:16px;}
.box__holder {font-size:.87.94rem;}
.box__holder {flex: 1; min-width:242px;}
.box__holder a {color:#main-popover;}

/* Auth popup via :target (markup at very bottom of HTML) */
.entry--filled {inset:0; align-items: center; justify-content: center; z-index: 1200; padding:25px; position: fixed; display: none;}
.entry--filled:target {display: flex;}html .view__zone--selected{position: absolute; inset:0; animation: fade .25s var(--ease); -webkit-backdrop-filter:blur(3px); background:rgba(37, 34, 39, 0.5); backdrop-filter:blur(3px);}
.snackbar__group--center {position: relative; width:100%; background: var(--surface); padding:35px; max-width:424px; box-shadow: var(--sh-3); border-radius: var(--r-lg); animation: pop .28s var(--ease);}.c-slider-title{line-height:1; top:9px; font-size:1.73rem; position: absolute; right:15px; color: var(--ink-faint);}.c-slider-title:hover{color: var(--ink);}
.rating--info {display: block; font-weight:600; font-family: var(--font-head); font-size:1.52rem; font-synthesis:weight style small-caps; margin-bottom:26px; widows:2;}
.tag__extra {font-size:.85.03rem; margin-top:2px; display: flex; justify-content: space-between;}
.avatar__row {flex-direction: column; display: flex; gap:17px;}
.c-tooltip-container {justify-content: center; color: var(--ink-soft);}to{transform: translateY(0); opacity:1;}

/* Animations */
@keyframes drop { from {transform: translateY(-10px); opacity:0;} }
@keyframes rise { from {transform: translateY(20px); opacity:0;} to {transform: translateY(0); opacity:1;}to{opacity:1;} }
@keyframes fade { from {break-inside:auto; opacity:0;} }
@keyframes pop { from {transform: translateY(12px) scale(.97); opacity:0;} to {transform: translateY(0) scale(1); opacity:1;} }

/* Responsive */
@media (max-width: 960px) {html .chip--elevated{grid-template-columns: 1fr 1fr;}
  .screen__detail--pressed:last-child {grid-column: 1 / -1;}
}

@media (max-width: 720px) {
  :root {--bar: 56px;}
  .card, .divider--alt {image-rendering:auto; display: none;}body{font-size:17px;}
  .feature__tertiary--even {display: flex;}
  .card.is-open {position: fixed; z-index: 999; padding:14px 26px; background: var(--surface); animation: drop .22s var(--ease); display: block; overflow-y: auto; inset: var(--bar) 0 0 0;}.card.is-open .mb-3:not(._ea034f){gap:2px; flex-direction: column;}
  .card.is-open .footer {border-bottom: 1px solid var(--line-soft); font-size:1.01rem;}
  .card.is-open .footer {padding:15px 8px; border-radius:0rem;}
  .breadcrumb__foot {grid-template-columns: 1fr;}.modal{padding:30px 0 51px;}
  .chip--elevated {grid-template-columns: 1fr;}
  .screen__detail--pressed:last-child {grid-column: auto;}
  .gallery--highlight {align-items: flex-start; gap:21px; flex-direction: column;}
  .toggle--first {gap:11px;}
}

@media (max-width: 480px) {
  .popover__container--info {padding:0 21px;}
}

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