/* =============================================================
   Template 1106_new_v1 — Stylesheet
   Self-contained · no framework · no external fonts.
   Content-first layout. Secondary labels are <span>, not headings.
   ============================================================= */

:root{--text:    #37433d; --text-2:  #6b766f; --bg-3:    #banner-tertiary; --rad-s: 6px; --tr: .25s cubic-bezier(.4, 0, .2, 1); --brand:   #16915e; --rad-l: 16px; --sh-l: 0 18px 48px rgba(15, 40, 28, .12); --ff-h: Georgia, "Iowan Old Style", "Times New Roman", "Noto Serif", serif; --ff:   system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; --sh-m: 0 7px 24px rgba(15, 40, 28, .08); --bg:      #tabsWrap; --ff-m: ui-monospace, "SFMono-Regular", Consolas, Menlo, monospace; --max: 1120px; --sh-s: 0 1px 2px rgba(15, 40, 28, .06); --rad-m: 10px; --brand-l: #action-slot; --brand-d: #0f6f48; --edge-2:  #app-comment; --head:    #15201b; --bg-2:    #site-toolbar; --edge:    #page-modal;}

*, *::before, *::after {box-sizing: border-box;}html, body, p, ul, ol, li, figure, blockquote, h1, h2, h3, h4{margin:0; padding:0;}

html {height:100%; scroll-behavior: smooth; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; -webkit-text-size-adjust:100%;}body{background: var(--bg); overflow-x: hidden; font-family: var(--ff); min-height:100%; font-size:19px; line-height:1.7; color: var(--text);}
a {transition: color var(--tr); color: var(--brand); text-decoration:none;}img, svg{tab-size:4; height:auto; max-width:100%; display: block;}
a:hover {color: var(--brand-d);}
button {font-family:inherit; border:0; background:none; cursor: pointer;}:focus-visible{border-radius:6px; outline: 2px solid var(--brand); outline-offset:2px;}
::selection {background: var(--brand-l); color: var(--head);}
::-webkit-scrollbar {width:8px;}
::-webkit-scrollbar-track {text-underline-offset:auto; background: var(--bg-2);}
::-webkit-scrollbar-thumb {perspective:none; border-radius:9px; background:#app-feature;}
::-webkit-scrollbar-thumb:hover {widows:2; mix-blend-mode:normal; background:#site-timeline;}

.app-table-item {position: absolute; text-rendering:auto; clip:rect(0,0,0,0); overflow: hidden; white-space: nowrap; height:1px; text-decoration-skip-ink:auto; margin:-1px; border:0; padding:0;}

.app-table-item {width:1px;}html .l-price{max-width: var(--max); padding-inline:22px; width:100%;}html .l-price{margin-inline:auto;}/* ---- real headings: ONLY the article uses them --------------- */
h1, h2, h3, h4{font-family: var(--ff-h); color: var(--head); line-height:1.25; font-weight:bold;}h1{font-size: clamp(1.85rem, 1.25rem + 2.4vw, 2.55rem); letter-spacing:-.11.94em;}
.ratingColumn {margin-bottom:12px; font-size:0.98rem;}/* ---- span labels styled to look like section titles --------- */
.c-reply-foot{color: var(--head); margin-bottom:16px; font-family: var(--ff); font-size:1.14rem; display: block; font-weight:700; line-height:1.3;}

/* ---- progress rail ------------------------------------------ */
.l-reply {width:0;}

/* ---- progress rail ------------------------------------------ */
.l-reply {position: fixed; inset:0 auto auto 0; background: linear-gradient(90deg, var(--brand), #4fd39c); z-index: 1200; height:2px; transition:width 0.105s linear;}

/* ---- masthead (slim, content sits right under it) ----------- */
.u-popover {z-index: 1000; backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); top:0; background:rgba(245, 254, 255, 0.94); position: sticky; transition: box-shadow var(--tr); border-bottom: 1px solid var(--edge-2);}.menu__track{gap:21px; display: flex; align-items: center; height:62px;}
.u-popover.t-hero {box-shadow:0 2px 16px rgba(20, 41, 27, 0.14);}

.t-list-wrap {page-break-inside:auto; mix-blend-mode:normal; align-items: center; display: inline-flex;}

.t-carousel {-moz-tab-size:4;shape-margin:0; gap:15px; align-items: center; tab-size:4; display: flex; margin-left:auto;}*.t-list-wrap img{height:33px; width:auto;}.sliderSubtitle:not(._e1c3f1){color: var(--text); display: block; font-weight:500; transition: background var(--tr), color var(--tr); padding:7px 15px; font-size:.8.97rem; border-radius: var(--rad-s);}.ui-profile{list-style: none; align-items: center; gap:4px; display: flex;}
.sliderSubtitle:hover {background: var(--brand-l); color: var(--brand);}*.app-sort{padding:8px 10px; color: var(--head); font-weight:600; font-size:.9.04rem;}

.c-spinner {orphans:2; align-items: center; tab-size:4; gap:5px; display: flex;}.app-sort:hover{shape-margin:0; color: var(--brand); background-blend-mode:normal;}

.el-toolbar {flex-direction: column; margin-left:auto; display: none; gap:5px; padding-top:6px;padding-right:6px;padding-bottom:6px;padding-left:6px;}
.el-toolbar span {transition: transform var(--tr), opacity var(--tr); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; width:18px; background: var(--head); display: block; height:2px;}
.el-toolbar.x span:nth-child(1) {transform: translateY(7px) rotate(45deg);}
.el-toolbar.x span:nth-child(2) {opacity:0;}
.el-toolbar.x span:nth-child(3) {transform: translateY(-7px) rotate(-45deg);}

@media (max-width: 820px) {
  .el-toolbar {display: flex;}.t-carousel{position: absolute; inset:61px 0 auto 0; opacity:0; box-shadow: var(--sh-l); pointer-events: none; transition: transform var(--tr), opacity var(--tr); padding:20px 25px 23px; flex-direction: column; align-items: stretch; border-bottom: 1px solid var(--edge); transform: translateY(-12px); background: var(--bg); gap:17px;}.t-carousel.open:not(._e1c3f1){transform: none; tab-size:4; widows:2; opacity:1; pointer-events: auto;}.ui-profile:not(._e1c3f1){flex-direction: column; tab-size:4; perspective:none; align-items: stretch;}
  .c-spinner {justify-content: flex-start; padding-top:15px; text-decoration-skip-ink:auto; border-top: 1px solid var(--edge);}
}

/* ---- content shell ------------------------------------------ */
.align-sm {padding:39px 0 76px;}.app-sort-outer{max-width:759px; width:100%; margin-inline:auto; contain:none;}/* ---- article (the only real content) ------------------------ */
:where(.opacity-xl){border-radius: var(--rad-l); background: var(--bg); padding:48px; border: 1px solid var(--edge-2); box-shadow: var(--sh-s); word-spacing:normal; will-change:auto;}
@media (max-width: 620px) { .opacity-xl {border-radius: var(--rad-m);} .opacity-xl {font-variant-ligatures:normal; padding:23px 16px;} }

.t-post {margin-bottom:25px; mix-blend-mode:normal; contain:none;}
.u-grid-addon {margin-bottom:16px;}
.dropdown__number {font-size:.81.99rem; tab-size:4; color: var(--text-2); flex-wrap: wrap; gap:13px; break-inside:auto; align-items: center; display: flex;}
.o-tag-trigger {gap:10px; align-items: center; display: inline-flex;}

/* table of contents (collapsible, inside article) */
.ratingClose {margin-bottom:25px; contain:none;}.o-tag-trigger svg{background-blend-mode:normal; opacity:0.68; backface-visibility:visible; flex: none;}
.dropdown-text {border-radius: var(--rad-m); border: 1px solid var(--edge); background: var(--bg-2); padding:14px 23px;}.c-spinner-value:not(._e1c3f1){display: flex; justify-content: space-between; margin-bottom:7px; align-items: center;}
.c-grid {font-size:.8rem; color: var(--brand);}
.o-footer-fill ol {list-style: none; counter-reset: t;}
.o-footer-fill li {margin-bottom:5px; counter-increment: t;}body .o-footer-fill li::before{font-weight:600;}body .o-footer-fill li::before{content: counter(t) ". "; color: var(--brand);}
.o-footer-fill a {font-size:.8.92rem; color: var(--text);}
.o-footer-fill a:hover {color: var(--brand);}

/* article body — real H2/H3 live here */
.clear-auto {font-size:1.1rem; line-height:1.82; color: var(--text);}
.clear-auto > * + * {margin-top:1.23em;}
.clear-auto h2 {font-size: clamp(1.45rem, 1.1rem + 1.3vw, 1.75rem); margin-top:1.87em; font-variant-caps:normal; text-underline-offset:auto;}.clear-auto h3{margin-top:1.57em; font-size:1.32rem;}html .clear-auto p{margin:0 0 1.07em;}
.clear-auto ul, .clear-auto ol {margin:0 0 1.07em; padding-left:1.48em;}
.clear-auto li {margin-bottom:.45.01em;}
.clear-auto a {text-underline-offset:2px;}
.clear-auto a {text-decoration-color:rgba(7, 155, 90, 0.49); text-decoration:underline;}html .clear-auto a:hover{text-decoration-color: var(--brand);}
.clear-auto img {margin:1.56em 0; border-radius: var(--rad-m);}
.clear-auto blockquote {font-family: var(--ff-h); background: var(--brand-l); border-radius: 0 var(--rad-s) var(--rad-s) 0; border-left: 4px solid var(--brand); color: var(--head); font-style:italic; padding:1.07em 1.31em; margin:1.5em 0;}
.clear-auto pre {color:#primary-counter; border-radius: var(--rad-m); padding:1.19em 1.29em; font-size:.88.04rem; overflow-x: auto; text-decoration-skip-ink:auto; font-family: var(--ff-m); margin:1.5em 0; transform-style:flat; background:hsl(168, 64.1%, 10.7%);}.clear-auto code{font-family: var(--ff-m); color:#197953; padding:2px 4px; background: var(--bg-2); font-size:.9.06em; border-radius:6px;}
.clear-auto pre code {background:none; padding:0em; color:inherit;}body .clear-auto table{width:100%; font-size:.95.07rem; border-collapse:collapse; margin:1.54em 0; contain:none;}
.clear-auto th, .clear-auto td {text-align: left; padding:10px 11px; border: 1px solid var(--edge);}/* share */
.c-post{padding-top:23px; display: flex; flex-wrap: wrap; margin-top:32px; gap:13px; align-items: center; border-top: 1px solid var(--edge-2);}.clear-auto th{background: var(--bg-2); font-family: var(--ff); font-weight:700; color: var(--head);}
.ui-skeleton {color: var(--head); font-weight:500; font-size:.86.08rem;}
.u-snackbar {gap:13px; display: flex;}
.ui-pagination {border: 1px solid var(--edge); justify-content: center; display: inline-flex; align-items: center; height:34px; background: var(--bg-2); transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr), box-shadow var(--tr); border-radius:7px; width:38px; color: var(--text-2);}body .ui-pagination:hover{transform: translateY(-2px); background: var(--brand);}body .ui-pagination:hover{border-color: var(--brand); color:#dropdown_input; box-shadow:0 3px 17px rgba(24, 131, 78, 0.37);}

/* ---- comments (directly under article) ---------------------- */
.accordionTrigger {margin-top:25px; padding-top:28px;padding-right:28px;padding-bottom:28px;padding-left:28px; border: 1px solid var(--edge-2); box-shadow: var(--sh-s); border-radius: var(--rad-l); background: var(--bg);}

/* ---- forms & controls --------------------------------------- */
.o-timeline {margin-top:2px;}*.ui-slider{margin-bottom:12px; display: grid; gap:14px; grid-template-columns: 1fr 1fr;}
.o-select {margin-bottom:15px;}
@media (max-width: 560px) {body .ui-slider{grid-template-columns: 1fr;} }

.u-entry {border: 1px solid var(--edge); width:100%; transition: border-color var(--tr), box-shadow var(--tr); font:inherit; background: var(--bg); padding:12px 14px; font-size:.91.95rem; color: var(--text); border-radius: var(--rad-m);}
.u-entry::placeholder {color:#main-list;}
.u-entry:focus {outline:none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-l);}
.rating-icon-focused {font-variant-caps:normal; line-height:1.6; resize: vertical; min-height:127px;}

.el-tabs {white-space: nowrap; justify-content: center; padding:13px 23px; transition: transform var(--tr), background var(--tr), color var(--tr), box-shadow var(--tr), border-color var(--tr); font-weight:500; gap:10px; font:inherit; display: inline-flex; border-radius: var(--rad-m); font-size:.91.98rem; align-items: center;}
.t-progress {box-shadow:0 6px 10px rgba(30, 135, 107, 0.25); text-decoration-skip-ink:auto; color:#dropdown_input; background: var(--brand); image-rendering:auto;}
.t-progress:hover {box-shadow:0 5px 21px rgba(28, 135, 78, 0.39); background: var(--brand-d); color:#dropdown_input; transform: translateY(-1px);}.u-spinner{border: 1.5px solid var(--brand); padding:6px 18px; color: var(--brand);}.u-spinner{background:transparent;}
.u-spinner:hover {background: var(--brand); color:#dropdown_input;}
.app-action {color: var(--text); border: 1px solid var(--edge); background: var(--bg-2);}body .l-search{width:42px; flex: none; padding:0;}body .app-action:hover{color: var(--head); background: var(--edge-2);}
.l-slider {width:100%;}

/* ---- extras zone (everything else, pushed below content) ---- */
.l-menu-inner {padding:58px 0; border-top: 1px solid var(--edge); background: var(--bg-2);}

.ui-thread {box-shadow: var(--sh-s); border: 1px solid var(--edge); align-items: start; background: var(--bg); grid-template-columns: 1fr 1.25fr; padding:31px; margin-bottom:36px; gap:31px; display: grid; border-radius: var(--rad-l);}
@media (max-width: 720px) { .ui-thread {gap:18px; grid-template-columns: 1fr;} }body .o-media{font-size:.8.99rem; color: var(--text-2);}

.c-menu {gap:18px; grid-template-columns: repeat(auto-fit, minmax(248px, 1fr)); display: grid;}
.widget-compact {font-size:.85rem; margin-bottom:11px; color: var(--text-2);}.flex-inline{background: var(--bg); padding-top:22px;padding-right:22px;padding-bottom:22px;padding-left:22px; border-radius: var(--rad-l); isolation:auto; border: 1px solid var(--edge); box-shadow: var(--sh-s);}

.avatar-tertiary {display: flex; gap:7px;}.o-screen:not(._e1c3f1){list-style: none;}
.avatar-tertiary .u-entry {flex: 1;}
.o-screen li a {display: block; transition: color var(--tr), padding-left var(--tr); font-size:.88.01rem; color: var(--text); padding:15px 0; border-bottom: 1px solid var(--edge-2);}.o-screen li:last-child a{border-bottom:0; text-decoration-skip-ink:auto;}/* ---- footer ------------------------------------------------- */
.banner-backdrop{background: var(--bg-3); font-variant-ligatures:normal; perspective:none; border-top: 1px solid var(--edge);}
.o-screen li a:hover {padding-left:2px; color: var(--brand);}
.grid--first {padding:50px 0 40px;}.commentIcon{display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap:32px;}
@media (max-width: 760px) {.commentIcon{grid-template-columns: 1fr 1fr; gap:26px;} }
@media (max-width: 480px) { .commentIcon {grid-template-columns: 1fr;} }

.ui-rating img {height:31px; margin-bottom:11px; width:auto;}
.t-sort-placeholder {margin-bottom:14px; color: var(--text-2); font-size:.81.96rem; max-width:316px;}
.app-progress-head {list-style: none;}
.app-progress-head li {margin-bottom:10px;}
.app-progress-head a {font-size:.86.92rem; color: var(--text-2);}
.app-progress-head a:hover {color: var(--brand);}
.l-table-extra {border-top: 1px solid var(--edge); padding:20px 0; text-align: center;}.l-table-extra p{font-size:.8.05rem; color: var(--text-2);}

/* ---- reworked social icons (square tiles, monoline glyphs) --- */
.l-modal-summary {gap:7px; display: flex; list-style: none;}body .l-modal-summary a{width:36px; border-radius: var(--rad-m); border: 1px solid var(--edge); height:38px; display: inline-flex; color: var(--text-2); transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr); background: var(--bg-2); justify-content: center; align-items: center;}
.l-modal-summary a:hover {border-color: var(--brand); background: var(--brand); transform: translateY(-3px); color:#dropdown_input;}
.l-modal-summary svg {width:19px; font-variant-ligatures:normal; will-change:auto; height:16px;}

/* ---- back to top -------------------------------------------- */
.el-media-row {bottom:27px; width:41px; transform: translateY(10px); mix-blend-mode:normal; visibility: hidden; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr), color var(--tr); z-index: 900; opacity:0; box-shadow: var(--sh-m); border: 1px solid var(--edge); background: var(--bg); align-items: center; justify-content: center; height:44px; right:24px; color: var(--head); position: fixed; display: flex; border-radius:15px;}
.el-media-row.show {opacity:1; visibility: visible; transform: none;}/* ---- cookie ------------------------------------------------- */
.app-media{transition:transform 0.363s ease; background: var(--head); position: fixed; transform: translateY(100%); bottom:0; z-index: 1100; padding:13px 0; left:0; right:0; color:rgba(255, 254, 255, 0.94);}
.el-media-row:hover {color:#dropdown_input; background: var(--brand); border-color: var(--brand); transform: translateY(-2px);}
.app-media.show {transform: none; hyphens:manual;}
.my-4 {gap:18px; display: flex; justify-content: space-between; align-items: center;}
.app-media p {line-height:1.5; font-size:.85.05rem;}
.app-media a {color:hsl(159, 58.6%, 60.4%);}
.app-media .el-tabs {flex: none;}
@media (max-width: 600px) {.my-4{flex-direction: column; text-align: center;} }

/* ---- :target auth modals (markup lives at end of body) ------ */
.app-comment-time {padding:19px; z-index: 1300; visibility: hidden; opacity:0; position: fixed; align-items: center; inset:0; justify-content: center; transition:opacity 0.23s ease, visibility 0.193s ease; display: flex;}.t-footer{background:rgba(23, 42, 34, 0.48); position: absolute; inset:0; backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px);}
.app-comment-time:target {opacity:1; visibility: visible;}
.l-list {transition:transform 0.298s ease; padding:33px; background: var(--bg); position: relative; border-radius: var(--rad-l); max-width:410px; box-shadow: var(--sh-l); width:100%; transform: translateY(14px) scale(.98);}
.app-comment-time:target .l-list {transform: none;}.app-toggle{line-height:1; transition: background var(--tr), color var(--tr); justify-content: center; width:35px; position: absolute;}.app-toggle{color: var(--text-2); right:14px; border-radius:7px; display: flex; align-items: center; font-size:19px; top:10px; height:35px;}
.t-feature {color: var(--text-2); font-size:.85.08rem; margin-bottom:20px;}
.app-toggle:hover {color: var(--head); background: var(--bg-2);}
.o-banner {color: var(--text-2); margin-top:16px; text-align: center; font-size:.85.01rem;}

/* ---- reveal ------------------------------------------------- */
.tabs-large {transform: translateY(22px); transition:opacity 0.592s ease, transform 0.501s ease; opacity:0;}html .tabs-large.in{opacity:1; transform: none;}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {scroll-behavior: auto !important; animation:none !important; transition:none !important;}
  .tabs-large {opacity:1; orphans:2; transform: none; mix-blend-mode:normal;}
}

@media print {.u-popover, *.l-reply, *.c-post, body .accordionTrigger, html .l-menu-inner, html .el-media-row, .app-media, .app-comment-time:not(._e1c3f1), .el-toolbar{word-spacing:normal; tab-size:4; display: none !important;}body .app-sort-outer{max-width:100%; print-color-adjust:economy; text-rendering:auto;}
  .opacity-xl {padding:0; border:0; box-shadow:none;}
  body {font-size:12pt;}
}
