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

:root {--brand:   #16915e; --ff:   system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; --max: 1120px; --bg-3:    #f1f6f3; --head:    #15201b; --sh-l: 0 18px 48px rgba(15, 40, 28, .12); --sh-m: 0 7px 24px rgba(15, 40, 28, .08); --text:    #37433d; --bg:      #ffffff; --text-2:  #6b766f; --bg-2:    #f3f7f4;}/* =============================================================
   Template 1106_new_v1 — Stylesheet
   Self-contained · no framework · no external fonts.
   Content-first layout. Secondary labels are <span>, not headings.
   ============================================================= */

:root {--rad-l: 16px; --edge-2:  #edf2ef; --ff-m: ui-monospace, "SFMono-Regular", Consolas, Menlo, monospace; --rad-s: 6px; --brand-l: #e7f5ee; --ff-h: Georgia, "Iowan Old Style", "Times New Roman", "Noto Serif", serif; --edge:    #e3ebe6; --rad-m: 10px; --brand-d: #0f6f48; --sh-s: 0 1px 2px rgba(15, 40, 28, .06); --tr: .25s cubic-bezier(.4, 0, .2, 1);}

*, *::before, *::after {box-sizing: border-box;}
.counter--danger {justify-content:flex-start; transition:all 0.3s ease; text-align:right}

html, body, p, ul, ol, li, figure, blockquote, h1, h2, h3, h4 {margin:0; padding:0; will-change:auto;}

body {font-family: var(--ff); overflow-x: hidden; line-height:1.7; font-size:13px; color: var(--text); min-height:100%; background: var(--bg);}html{mix-blend-mode:normal; -webkit-text-size-adjust:100%; height:100%; -webkit-font-smoothing:antialiased; scroll-behavior: smooth; -moz-osx-font-smoothing:grayscale;}
.thread-bar > addon {flex-wrap:nowrap; position:sticky}


img, svg {max-width:100%; height:auto; display: block;}
a {word-spacing:normal; background-blend-mode:normal; text-decoration:none; transition: color var(--tr); color: var(--brand);}
a:hover {color: var(--brand-d);}button{font-family:inherit; cursor: pointer; background:none; border:0;}

:focus-visible {border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px; outline: 2px solid var(--brand); outline-offset:2px;}
::selection {break-inside:auto; background: var(--brand-l); text-underline-offset:auto; color: var(--head);}
.avatar-wrapper:hover {gap:2.5rem; padding-top:23px}
::-webkit-scrollbar{width:13px;}
::-webkit-scrollbar-thumb {border-top-left-radius:10px;border-top-right-radius:10px;border-bottom-right-radius:10px;border-bottom-left-radius:10px; background-color:#cfc3ba;}
::-webkit-scrollbar-track {background: var(--bg-2);}::-webkit-scrollbar-thumb:hover{background:hsl(215, 14.3%, 63.2%);}

.dropdown-body {width:1px; overflow: hidden; margin:-1px; height:1px; padding:0; position: absolute;}

.dropdown-body {white-space: nowrap; clip:rect(0,0,0,0); border:0 none;}.filterTitle{max-width: var(--max); margin-inline:auto;}

/* ---- real headings: ONLY the article uses them --------------- */
h1, h2, h3, h4 {line-height:1.25; font-weight:700; font-family: var(--ff-h); color: var(--head); transform-style:flat;}.filterTitle{width:100%; padding-inline:22px;}h1{letter-spacing:-.11.97em; word-spacing:normal; font-synthesis:weight style small-caps; font-size: clamp(1.85rem, 1.25rem + 2.4vw, 2.55rem);}
.profile-toggle:not(:last-child) {height:100%; transition:all 0.5s ease; background:#181418; align-items:flex-start; line-height:normal; display:table}


/* ---- span labels styled to look like section titles --------- */
.gap-6 {display: block; color: var(--head); font-size:1.24rem; font-family: var(--ff); line-height:1.3; font-weight:bold; margin-bottom:18px;}.d-12:not(.nil63){margin-bottom:15px; transform-style:flat; font-size:0.97rem;}

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

/* ---- masthead (slim, content sits right under it) ----------- */
.clear-20 {top:0; backdrop-filter:blur(10px); z-index: 1000; transition: box-shadow var(--tr); border-bottom: 1px solid var(--edge-2); -webkit-backdrop-filter:blur(10px); position: sticky; background:rgba(251, 255, 241, 0.89);}
.clear-20.opacity-0 {box-shadow:0 2px 16px rgba(0, 54, 42, 0);}
.justify-none {align-items: center; display: flex; height:61px; gap:22px;}

.order-center {display: inline-flex; align-items: center;}

.text-5 {display: flex; align-items: center; gap:14px; margin-left:auto;}
.order-center img {height:33px; width:auto;}html .py-16{font-weight:500; transition: background var(--tr), color var(--tr); font-size:.8.98rem; color: var(--text); display: block; padding:11px 16px; border-radius: var(--rad-s);}
@media (max-width: 1280px) {
  .block__date {margin-right:48px; text-decoration:underline; padding-top:1.125rem; box-shadow:none}
  .form-image {transition:opacity 0.2s; min-height:100vh; display:inline-block}
  .avatar-wrapper:hover {padding-left:1.125rem; text-transform:uppercase; min-width:9px; position:static}
}


.px-around {display: flex; list-style: none; gap:4px; align-items: center;}
.carousel--loading {gap:1.5rem; min-height:100vh}

.py-16:hover {background: var(--brand-l); color: var(--brand);}body .gap-screen{display: flex; gap:7px; word-spacing:normal; align-items: center;}
.d-center {color: var(--head); font-weight:600; font-size:.8.94rem; padding:7px 5px;}
.block__date {padding:29px 22px; margin-top:auto; letter-spacing:normal}

.d-center:hover {color: var(--brand);}
.avatar-meta:hover {margin-top:0; min-height:41px; min-width:0}
.m-10{display: none; padding:12px; gap:5px; flex-direction: column; margin-left:auto;}html .m-10 span{display: block; background: var(--head); transition: transform var(--tr), opacity var(--tr); border-radius:2px; height:2px; width:25px;}
.m-10.x span:nth-child(1) {transform: translateY(7px) rotate(45deg);}
.m-10.x span:nth-child(2) {opacity:0;}.m-10.x span:nth-child(3){transform: translateY(-7px) rotate(-45deg);}

@media (max-width: 820px) {.m-10:not(.skip81){display: flex;}html .text-5{flex-direction: column; inset:58px 0 auto 0; align-items: stretch; box-shadow: var(--sh-l); transition: transform var(--tr), opacity var(--tr); transform: translateY(-12px); pointer-events: none; position: absolute; border-bottom: 1px solid var(--edge); gap:18px; background: var(--bg); padding:15px 20px 25px; opacity:0;}
  .text-5.open {opacity:1; transform: none; pointer-events: auto;}
  .px-around {align-items: stretch; flex-direction: column;}body .gap-screen{padding-top:12px; border-top: 1px solid var(--edge); justify-content: flex-start;}
}
.l-pagination {margin-inline:auto; max-width:763px; width:100%;}

/* ---- content shell ------------------------------------------ */
.pb-20 {image-rendering:auto; padding:40px 0 75px;}

/* ---- article (the only real content) ------------------------ */
.px-md {font-synthesis:weight style small-caps; border: 1px solid var(--edge-2); border-radius: var(--rad-l); padding:44px; background: var(--bg); box-shadow: var(--sh-s);}
@media (max-width: 620px) {body .px-md{padding-top:23px; padding-right:24px; padding-bottom:23px; padding-left:24px;}body .px-md{border-radius: var(--rad-m);} }

.pr-2 {margin-bottom:26px;}
.clear-6 {margin-bottom:19px;}
.drawer {gap:3px; font-variant-caps:normal; align-items: center; display: inline-flex;}
.font-24 {color: var(--text-2); flex-wrap: wrap; font-size:.81.93rem; display: flex; gap:18px; align-items: center;}
.drawer svg {opacity:0.59; flex: none;}.mt-between:not(.noop49){border: 1px solid var(--edge); border-radius: var(--rad-m); background: var(--bg-2); padding:21px 26px;}

/* table of contents (collapsible, inside article) */
.c-stepper-overlay {margin-bottom:32px;}
.list {display: flex; align-items: center; justify-content: space-between; margin-bottom:8px; break-inside:auto; transform-style:flat;}*.grid-2{color: var(--brand); font-size:.8.06rem;}
.font-4 ol {counter-reset: t; list-style: none;}
.font-4 li {margin-bottom:9px; counter-increment: t;}
.font-4 li::before {font-weight:600; color: var(--brand); content: counter(t) ". ";}
.font-4 a {font-size:.9.04rem; color: var(--text);}
.font-4 a:hover {color: var(--brand);}/* article body — real H2/H3 live here */
.c-screen-region{font-size:1.11rem; color: var(--text); line-height:1.82;}
.c-screen-region > * + * {margin-top:1.08em;}.c-screen-region h2{font-size: clamp(1.45rem, 1.1rem + 1.3vw, 1.75rem); margin-top:1.93em;}
.c-screen-region h3 {margin-top:1.53em; font-size:1.26rem;}
.toggle-label > item {text-transform:lowercase; position:absolute}

@media (min-width: 480px) and (max-width: 799px) {
  .popover-number + .card-text {opacity:0.92; min-width:0; transition:color 0.2s; display:inline; font-size:41px}
  .spinner-block::before {content:''; position:sticky; width:100%}
}

*.c-screen-region p{margin:0 0 1.17em; page-break-inside:auto;}
.c-screen-region ul, .c-screen-region ol {margin:0 0 1.11em; padding-left:1.47em;}
.c-screen-region li {margin-bottom:.44.98em;}.c-screen-region a{text-underline-offset:2px; text-decoration-color:rgba(33, 138, 112, 0.53); text-decoration:underline;}
.c-screen-region a:hover {text-decoration-color: var(--brand);}
.c-screen-region img {margin:1.56em 0; border-radius: var(--rad-m);}
.c-screen-region blockquote {font-family: var(--ff-h); border-radius: 0 var(--rad-s) var(--rad-s) 0; background: var(--brand-l); padding-top:0.96em;padding-right:1.32em;padding-bottom:0.96em;padding-left:1.32em; border-left: 4px solid var(--brand); color: var(--head); margin:1.55em 0; font-style:italic;}html .c-screen-region pre{padding-top:1.1em;padding-right:1.26em;padding-bottom:1.1em;padding-left:1.26em; background:#0b1614; margin:1.47em 0; color:#eaf5e7; border-radius: var(--rad-m); font-size:.87.92rem; font-family: var(--ff-m); overflow-x: auto;}.c-screen-region code{font-size:.8.96em; background: var(--bg-2); padding:2px 6px; font-family: var(--ff-m); color:#115e4e; border-top-left-radius:7px;border-top-right-radius:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px;}.c-screen-region pre code{background:none; padding:0; color:inherit;}
.c-screen-region table {font-size:.95.01rem; border-collapse:collapse; width:100%; margin:1.42em 0;}
.c-screen-region th, .c-screen-region td {border: 1px solid var(--edge); padding:8px 18px; text-align: left;}
.c-screen-region th {font-weight:600; font-family: var(--ff); color: var(--head); background: var(--bg-2);}

/* share */
.float-4 {border-top: 1px solid var(--edge-2); flex-wrap: wrap; gap:11px; margin-top:33px; padding-top:22px; display: flex; align-items: center;}.leading-xl{font-size:.85.93rem; color: var(--head); will-change:auto; font-weight:600;}
.mr-16 {display: flex; isolation:auto; gap:9px;}
.pr-8 {display: inline-flex; height:35px; border: 1px solid var(--edge); width:35px; background: var(--bg-2); transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr), box-shadow var(--tr); justify-content: center; border-top-left-radius:9px;border-top-right-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px; color: var(--text-2); align-items: center;}
.pr-8:hover {transform-style:flat; font-variant-ligatures:normal; box-shadow:0 3px 13px rgba(38, 152, 109, 0.28); color:#ffffff; transform: translateY(-2px); border-color: var(--brand); background: var(--brand);}

/* ---- comments (directly under article) ---------------------- */
.my-auto {box-shadow: var(--sh-s); background: var(--bg);}

/* ---- forms & controls --------------------------------------- */
.d-0 {margin-top:6px;}

/* ---- comments (directly under article) ---------------------- */
.my-auto {border-radius: var(--rad-l); padding:29px; margin-top:27px; border: 1px solid var(--edge-2);}
.app-slider {margin-bottom:15px; display: grid; grid-template-columns: 1fr 1fr; gap:19px;}
.mt-screen {font-variant-caps:normal; will-change:auto; margin-bottom:18px;}
@media (max-width: 560px) {.app-slider{grid-template-columns: 1fr;} }body .t-nav{color: var(--text); font:inherit; border: 1px solid var(--edge); transition: border-color var(--tr), box-shadow var(--tr); background: var(--bg); padding:16px 16px; border-radius: var(--rad-m); font-variant-ligatures:normal; font-size:.92.06rem; width:100%;}
.t-nav::placeholder {color:#b2b8b5;}
.mr-none {line-height:1.6; min-height:127px; resize: vertical;}
.form-image {text-transform:lowercase; cursor:default; flex-wrap:wrap; transition:all 0.2s ease; font-weight:500}
.t-nav:focus{box-shadow: 0 0 0 3px var(--brand-l); outline:none; border-color: var(--brand);}

.pr-16 {-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual; font-synthesis:weight style small-caps; transition: transform var(--tr), background var(--tr), color var(--tr), box-shadow var(--tr), border-color var(--tr); border-radius: var(--rad-m); font-weight:600; padding-top:13px;padding-right:28px;padding-bottom:13px;padding-left:28px; justify-content: center; align-items: center; display: inline-flex; font:inherit; gap:7px; white-space: nowrap; font-size:.92.06rem;}
.foot-dropdown {color:#ffffff; background: var(--brand); box-shadow:0 2px 18px rgba(32, 159, 111, 0.3);}
.foot-dropdown:hover {background: var(--brand-d);}
.foot-dropdown:hover {image-rendering:auto; color:hsl(1, 99.8%, 97.1%); box-shadow:0 6px 24px rgba(32, 128, 100, 0.38); transform: translateY(-1px);}*.my-2xl{padding:9px 18px;}*.my-2xl{border: 1.5px solid var(--brand); background:transparent; color: var(--brand);}
.my-2xl:hover {background: var(--brand); color:#ffffff;}
.justify-between {background: var(--bg-2); border: 1px solid var(--edge); color: var(--text);}body .justify-between:hover{background: var(--edge-2); color: var(--head);}
.row-10 {padding:0; flex: none; width:47px;}
.shadow-3 {width:100%;}

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

.pb-8 {align-items: start; gap:31px; grid-template-columns: 1fr 1.25fr; background: var(--bg); margin-bottom:30px; padding-top:33px;padding-right:33px;padding-bottom:33px;padding-left:33px; border: 1px solid var(--edge); box-shadow: var(--sh-s); display: grid; border-radius: var(--rad-l);}
@media (max-width: 720px) {body .pb-8{grid-template-columns: 1fr; gap:20px;} }
.mt-12 {color: var(--text-2); font-size:.9.03rem;}

.pb-3 {grid-template-columns: repeat(auto-fit, minmax(248px, 1fr)); display: grid; gap:25px;}*.font-xs{border: 1px solid var(--edge); padding:25px; box-shadow: var(--sh-s); background: var(--bg); border-radius: var(--rad-l);}.z-inline:not(.dummy67){color: var(--text-2); font-size:.84.96rem; margin-bottom:12px;}

.overflow-full {gap:5px; display: flex;}.overflow-full .t-nav{flex: 1;}

.sortSpacer {list-style: none;}
.sortSpacer li a {font-size:.88.08rem; color: var(--text); display: block; transition: color var(--tr), padding-left var(--tr); padding:11px 0; border-bottom: 1px solid var(--edge-2);}.sortSpacer li:last-child a{border-bottom:0;}
.sortSpacer li a:hover {padding-left:1px; color: var(--brand);}
.media__close {padding:51px 0 39px;}/* ---- footer ------------------------------------------------- */
.clear-5{border-top: 1px solid var(--edge); text-rendering:auto; background: var(--bg-3);}
.panel--dense {cursor:pointer; align-items:flex-end; display:table; position:relative; padding-bottom:2rem}

.border-1 {display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap:33px;}
@media (max-width: 760px) { .border-1 {word-spacing:normal; grid-template-columns: 1fr 1fr; gap:28px; orphans:2;} }
@media (max-width: 480px) { .border-1 {grid-template-columns: 1fr;} }
.tooltip__cell {overflow:hidden; transition:all 0.5s ease}
.comment__thumb img{width:auto;}.comment__thumb img{margin-bottom:18px; height:29px;}*.grid-xs{color: var(--text-2); font-size:.81.98rem; max-width:317px; margin-bottom:12px;}html .flex-auto{list-style: none;}.flex-auto li{margin-bottom:6px;}
.flex-auto a {font-size:.87.03rem; color: var(--text-2);}
.grid-summary:hover {flex:1 1 0%; justify-content:center}
.flex-auto a:hover{color: var(--brand); backface-visibility:visible;}*.mb-24{border-top: 1px solid var(--edge); text-align: center; padding:17px 0;}.mb-24 p{color: var(--text-2); font-size:.7.97rem;}/* ---- reworked social icons (square tiles, monoline glyphs) --- */
.visible-1{gap:12px; display: flex; list-style: none;}.visible-1 a{border: 1px solid var(--edge); color: var(--text-2); break-inside:auto; width:38px; height:41px; transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr); display: inline-flex; image-rendering:auto; justify-content: center; background: var(--bg-2); align-items: center; border-radius: var(--rad-m);}
.visible-1 a:hover {border-color: var(--brand); background: var(--brand); transform: translateY(-3px); color:#fafff1;}
.visible-1 svg {width:14px; height:22px;}

/* ---- back to top -------------------------------------------- */
.h-24 {transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr), color var(--tr); opacity:0; background: var(--bg); z-index: 900; bottom:32px; box-shadow: var(--sh-m); border: 1px solid var(--edge); border-top-left-radius:10px;border-top-right-radius:10px;border-bottom-right-radius:10px;border-bottom-left-radius:10px; width:41px; visibility: hidden; display: flex; position: fixed; color: var(--head); height:41px; right:26px; justify-content: center; align-items: center; transform: translateY(10px);}
.h-24.show {visibility: visible; tab-size:4; word-spacing:normal; transform: none; opacity:1;}*.h-24:hover{color:#eef8ff; background: var(--brand); border-color: var(--brand); transform: translateY(-2px);}

/* ---- cookie ------------------------------------------------- */
.p-8 {transition:transform 0.357s ease; right:0; z-index: 1100; color:rgba(254, 249, 239, 0.85); background: var(--head); padding:18px 0; transform: translateY(100%); position: fixed; left:0; bottom:0;}
.p-8.show {transform: none;}
.primary-view {display: flex;}
.p-8 p {font-size:.85rem; line-height:1.5;}
.primary-view {justify-content: space-between; gap:19px; align-items: center;}
.p-8 a {color:hsl(162, 53.7%, 59.8%);}
.thread-addon::before {content:''; font-weight:normal; transition:transform 0.5s ease-in-out; padding-right:0.75rem; position:static}

.p-8 .pr-16 {flex: none;}
@media (max-width: 600px) { .primary-view {text-align: center; flex-direction: column;} }

/* ---- :target auth modals (markup lives at end of body) ------ */
.justify-md {justify-content: center; position: fixed; transition:opacity 0.297s ease, visibility 0.31s ease; inset:0; z-index: 1300; visibility: hidden; display: flex; opacity:0; align-items: center; padding:21px;}
.text-4 {inset:0; background:rgba(4, 24, 19, 0.57); -webkit-backdrop-filter:blur(2px); perspective:none; position: absolute; backdrop-filter:blur(2px);}.justify-md:target{page-break-inside:auto; opacity:1; will-change:auto; visibility: visible;}
.shadow-20 {max-width:412px; padding:37px; background: var(--bg); transform: translateY(14px) scale(.98); transition:transform 0.221s ease; border-radius: var(--rad-l); position: relative; box-shadow: var(--sh-l); width:100%;}
.justify-md:target .shadow-20 {transform: none;}
.o-divider {transition: background var(--tr), color var(--tr); border-top-left-radius:11px;border-top-right-radius:11px;border-bottom-right-radius:11px;border-bottom-left-radius:11px; mix-blend-mode:normal; align-items: center; top:17px; position: absolute; justify-content: center; right:10px; font-size:19px; height:38px; color: var(--text-2); display: flex; width:35px; line-height:1;}
.o-divider:hover {hyphens:manual; color: var(--head); background: var(--bg-2); will-change:auto;}
.col-5 {margin-bottom:19px; word-spacing:normal; font-size:.85.01rem; color: var(--text-2);}.text-8{text-align: center; margin-top:17px; font-size:.85.05rem; color: var(--text-2);}

/* ---- reveal ------------------------------------------------- */
.mt-10 {opacity:0; transition:opacity 0.512s ease, transform 0.535s ease;}

/* ---- reveal ------------------------------------------------- */
.mt-10 {transform: translateY(22px);}
.mt-10.in {transform: none; opacity:1;}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {transition:none !important; scroll-behavior: auto !important; animation:none !important;}
  .mt-10 {opacity:1; transform: none;}
}

@media print {
  .clear-20, .z-8, .float-4, .my-auto, .float-screen, .h-24, .p-8, .justify-md, .m-10 {display: none !important;}
  .l-pagination {max-width:100%;}
  .px-md {box-shadow:none; padding:0; border:0;}
  body {font-size:12pt;}
}
