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

:root {--bg-2:    #site-pagination; --tr: .25s cubic-bezier(.4, 0, .2, 1); --rad-l: 16px; --sh-s: 0 1px 2px rgba(15, 40, 28, .06); --brand-d: #0f6f48; --ff-m: ui-monospace, "SFMono-Regular", Consolas, Menlo, monospace; --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:      #site-spinner; tab-size:4; --max: 1120px; --brand-l: #site-breadcrumb; --bg-3:    #entry-zone; --head:    #15201b; --sh-l: 0 18px 48px rgba(15, 40, 28, .12); --ff-h: Georgia, "Iowan Old Style", "Times New Roman", "Noto Serif", serif; --edge:    #site-timeline; --text:    #37433d; --brand:   #16915e; --rad-m: 10px; --text-2:  #6b766f; --edge-2:  #summary-layout; --rad-s: 6px;}html, body, p, ul, ol, li, figure, blockquote, h1, h2, h3, h4{margin:0; padding:0;}

*, *::before, *::after {background-blend-mode:normal; box-sizing: border-box;}html{-moz-osx-font-smoothing:grayscale; -webkit-text-size-adjust:100%; scroll-behavior: smooth; height:100%; -webkit-font-smoothing:antialiased;}

body {font-size:15px; font-family: var(--ff); color: var(--text); overflow-x: hidden; background: var(--bg); min-height:100%; line-height:1.7;}img, svg{height:auto; max-width:100%; display: block;}
a {text-decoration:none; color: var(--brand); transition: color var(--tr);}
button {font-family:inherit; cursor: pointer; border:none 0; background:none;}
a:hover {color: var(--brand-d);}

:focus-visible {outline: 2px solid var(--brand); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; outline-offset:2px;}
::selection {text-decoration-skip-ink:auto; background: var(--brand-l); image-rendering:auto; color: var(--head);}
::-webkit-scrollbar-track {background: var(--bg-2);}
::-webkit-scrollbar {width:13px;}::-webkit-scrollbar-thumb{background:#main-thread; border-radius:12px;}
::-webkit-scrollbar-thumb:hover {background:#line-drawer;}

.l-menu {position: absolute; clip:rect(0,0,0,0); white-space: nowrap; padding:0; width:1px; margin:-1px; overflow: hidden; height:1px; border:0 none;}.o-breadcrumb:not(._b4573b){max-width: var(--max); width:100%; padding-inline:22px; margin-inline:auto;}

/* ---- real headings: ONLY the article uses them --------------- */
h1, h2, h3, h4 {background-blend-mode:normal; line-height:1.25; color: var(--head); font-weight:700; font-family: var(--ff-h);}
h1 {font-size: clamp(1.85rem, 1.25rem + 2.4vw, 2.55rem); letter-spacing:-.12.02em;}/* ---- span labels styled to look like section titles --------- */
.el-select{font-family: var(--ff); line-height:1.3; font-weight:bold; display: block; font-size:1.21rem; margin-bottom:18px; color: var(--head);}body .app-module{font-size:0.92rem; margin-bottom:11px;}/* ---- progress rail ------------------------------------------ */
.t-breadcrumb{width:0; z-index: 1200; background: linear-gradient(90deg, var(--brand), #4fd39c); height:1px; orphans:2; inset:0 auto auto 0; page-break-inside:auto; transition:width 0.089s linear; position: fixed;}/* ---- masthead (slim, content sits right under it) ----------- */
:where(.ui-view-inner){background:rgba(255, 255, 255, 1); -webkit-backdrop-filter:blur(10px); transition: box-shadow var(--tr); position: sticky; backdrop-filter:blur(10px); top:0; border-bottom: 1px solid var(--edge-2); z-index: 1000;}
.ui-view-inner.app-hero {background-blend-mode:normal; box-shadow:0 2px 16px rgba(22, 52, 14, 0.04);}html .ui-select-backdrop{gap:21px; height:54px;}html .ui-select-backdrop{align-items: center; display: flex;}

.ui-badge {display: inline-flex; tab-size:4;}

.ui-badge {align-items: center;}
.ui-badge img {height:31px; width:auto;}

.t-progress {gap:19px; display: flex; align-items: center; margin-left:auto;}
.slider-danger {border-radius: var(--rad-s); transition: background var(--tr), color var(--tr); font-weight:medium; padding:4px 11px; display: block; color: var(--text); font-size:.9rem;}
.o-banner {display: flex; list-style: none; gap:1px; align-items: center;}.slider-danger:hover{background: var(--brand-l);}.slider-danger:hover{hyphens:manual; color: var(--brand); tab-size:4;}html .ui-media-detail{align-items: center; display: flex; gap:11px;}
.gap-block {color: var(--head); background-blend-mode:normal; padding:5px 4px; font-size:.8.96rem; text-underline-offset:auto; font-weight:600;}body .gap-block:hover{color: var(--brand); tab-size:4;}

.app-step {gap:9px; display: none; flex-direction: column; margin-left:auto; padding-top:9px;padding-right:9px;padding-bottom:9px;padding-left:9px;}
.app-step span {transition: transform var(--tr), opacity var(--tr); height:2px; width:26px; text-decoration-skip-ink:auto; font-synthesis:weight style small-caps; background: var(--head); display: block; border-radius:2px;}
.app-step.x span:nth-child(1) {transform: translateY(7px) rotate(45deg);}
.app-step.x span:nth-child(2) {opacity:0;}.app-step.x span:nth-child(3){transform: translateY(-7px) rotate(-45deg);}

@media (max-width: 820px) {
  .app-step {font-synthesis:weight style small-caps; display: flex;}html .t-progress{align-items: stretch; position: absolute; border-bottom: 1px solid var(--edge); opacity:0; gap:10px; transition: transform var(--tr), opacity var(--tr); box-shadow: var(--sh-l); pointer-events: none; inset:54px 0 auto 0; background: var(--bg); transform: translateY(-12px); flex-direction: column; padding:17px 26px 26px;}
  .t-progress.open {pointer-events: auto; transform: none; opacity:1;}.o-banner:not(._b4573b){flex-direction: column; align-items: stretch;}*.ui-media-detail{justify-content: flex-start; padding-top:10px; border-top: 1px solid var(--edge);}
}

/* ---- content shell ------------------------------------------ */
.t-action {padding:43px 0 72px;}

/* ---- article (the only real content) ------------------------ */
.c-nav-action {padding:47px; border: 1px solid var(--edge-2); border-radius: var(--rad-l); background: var(--bg); box-shadow: var(--sh-s);}
.t-chip-expand {margin-inline:auto; width:100%; max-width:763px;}
@media (max-width: 620px) { .c-nav-action {border-radius: var(--rad-m); padding:22px 22px;} }.l-module{will-change:auto; margin-bottom:14px; mix-blend-mode:normal;}body .page-slot-active{margin-bottom:27px;}
.u-toolbar-suffix {align-items: center; gap:10px; display: inline-flex;}
.c-rating-zone {align-items: center; font-size:.81.93rem; display: flex; flex-wrap: wrap; color: var(--text-2); gap:12px;}
.u-toolbar-suffix svg {opacity:0.59; flex: none;}/* table of contents (collapsible, inside article) */
.l-sort{margin-bottom:31px;}
.postSpacer {text-rendering:auto; border: 1px solid var(--edge); backface-visibility:visible; border-radius: var(--rad-m); padding:22px 18px; background: var(--bg-2);}
.ui-toggle-container {color: var(--brand); font-size:.8.06rem;}.app-divider-tertiary{justify-content: space-between; align-items: center; margin-bottom:12px; display: flex;}
.t-counter ol {list-style: none; counter-reset: t;}
.t-counter li {margin-bottom:9px; counter-increment: t;}
.t-counter li::before {font-weight:600; content: counter(t) ". "; color: var(--brand);}body .t-counter a{font-size:.8.93rem; color: var(--text);}

/* article body — real H2/H3 live here */
.o-header-label {widows:2; font-size:1.01rem; color: var(--text); line-height:1.82; break-inside:auto;}.t-counter a:hover{print-color-adjust:economy; will-change:auto; color: var(--brand);}
.o-header-label > * + * {margin-top:1.21em;}body .o-header-label h2{margin-top:1.83em; font-size: clamp(1.45rem, 1.1rem + 1.3vw, 1.75rem);}
.o-header-label h3 {margin-top:1.53em; font-size:1.4rem;}
.o-header-label p {margin:0 0 1.12em;}
.o-header-label ul, .o-header-label ol {margin:0 0 1.09em; padding-left:1.53em;}.o-header-label li{margin-bottom:.44.98em;}
.o-header-label a {text-decoration:underline; text-decoration-color:rgba(9, 153, 104, 0.39); mix-blend-mode:normal; text-underline-offset:2px;}
.o-header-label a:hover {text-decoration-color: var(--brand);}body .o-header-label img{margin:1.49em 0; border-radius: var(--rad-m);}.o-header-label blockquote{padding:1.03em 1.27em; margin:1.58em 0; color: var(--head); font-style:italic; font-family: var(--ff-h); border-left: 4px solid var(--brand); background: var(--brand-l); border-radius: 0 var(--rad-s) var(--rad-s) 0;}
.o-header-label pre {font-family: var(--ff-m); color:#slider-block; padding:1.08em 1.38em; border-radius: var(--rad-m); font-size:.87.98rem; background:rgb(35, 28, 45); overflow-x: auto; margin:1.45em 0;}
.o-header-label code {padding:2px 7px; font-family: var(--ff-m); color:#086048; background: var(--bg-2); border-radius:3px; font-size:.9.01em;}.o-header-label pre code{padding:0; color:inherit; background:none;}
.o-header-label table {font-size:.94.99rem; width:100%; border-collapse:collapse; margin:1.58em 0;}
.o-header-label th, .o-header-label td {border: 1px solid var(--edge); padding:15px 19px; text-align: left;}
.o-header-label th {text-decoration-skip-ink:auto; font-weight:500; color: var(--head); background: var(--bg-2); font-family: var(--ff);}/* share */
.o-comment{border-top: 1px solid var(--edge-2); gap:11px; margin-top:34px; align-items: center; display: flex; padding-top:28px; flex-wrap: wrap;}
.list__primary--primary {font-weight:600; color: var(--head); font-size:.86.08rem;}.el-sort:not(._b4573b){gap:13px; display: flex;}.app-module-separator{justify-content: center; width:35px; border: 1px solid var(--edge); display: inline-flex; height:39px; background: var(--bg-2); transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr), box-shadow var(--tr); border-radius:6px; align-items: center; color: var(--text-2);}.app-module-separator:hover{box-shadow:0 5px 12px rgba(39, 154, 109, 0.25); transform: translateY(-2px); background: var(--brand); border-color: var(--brand); color:#box-name;}

/* ---- comments (directly under article) ---------------------- */
.t-accordion {background: var(--bg); margin-top:25px; border: 1px solid var(--edge-2); border-radius: var(--rad-l); padding-top:35px;padding-right:35px;padding-bottom:35px;padding-left:35px; box-shadow: var(--sh-s);}
.t-banner {transform-style:flat; margin-bottom:11px; display: grid; grid-template-columns: 1fr 1fr; gap:14px;}

/* ---- forms & controls --------------------------------------- */
.c-nav {margin-top:2px;}
.u-layout-number {margin-bottom:18px;}
@media (max-width: 560px) {body .t-banner{grid-template-columns: 1fr;} }

.t-list {font-size:.92.03rem; width:100%; padding:9px 14px; border-radius: var(--rad-m); transition: border-color var(--tr), box-shadow var(--tr); font:inherit; color: var(--text); background: var(--bg); border: 1px solid var(--edge);}html .t-list::placeholder{color:#main-footer;}
.t-list:focus {box-shadow: 0 0 0 3px var(--brand-l); border-color: var(--brand); outline:none;}
.el-progress {min-height:132px; line-height:1.6; resize: vertical;}

.screen-selected {gap:11px; padding:12px 22px; justify-content: center; font-weight:600; align-items: center; white-space: nowrap; display: inline-flex; border-radius: var(--rad-m); font-size:.92.04rem; transition: transform var(--tr), background var(--tr), color var(--tr), box-shadow var(--tr), border-color var(--tr); font:inherit;}
.position-10 {box-shadow:0 1px 15px rgba(28, 154, 111, 0.3); color:#box-name; background: var(--brand);}
.position-10:hover {background: var(--brand-d); transform: translateY(-1px); color:#box-name; box-shadow:0 7px 22px rgba(30, 156, 97, 0.28);}
.o-section {padding:5px 21px; background:transparent; color: var(--brand); border: 1.5px solid var(--brand);}
.o-section:hover {background: var(--brand); color:#box-name;}
.t-drawer-action {border: 1px solid var(--edge); color: var(--text);}
.t-drawer-action {background: var(--bg-2);}
.t-drawer-action:hover {background: var(--edge-2); color: var(--head);}*.l-card-region{padding:0; width:48px; flex: none;}
.app-view-inner {background-blend-mode:normal; width:100%; mix-blend-mode:normal;}

/* ---- extras zone (everything else, pushed below content) ---- */
.ui-header-line {border-top: 1px solid var(--edge); text-rendering:auto; contain:none; background: var(--bg-2); padding:58px 0;}

.u-avatar {border-radius: var(--rad-l); align-items: start; margin-bottom:36px; box-shadow: var(--sh-s); gap:32px; border: 1px solid var(--edge); display: grid; padding-top:38px;padding-right:38px;padding-bottom:38px;padding-left:38px; background: var(--bg); grid-template-columns: 1fr 1.25fr;}
@media (max-width: 720px) { .u-avatar {gap:19px; grid-template-columns: 1fr;} }
.py-sm {color: var(--text-2); font-size:.9rem;}body .c-toolbar-cell{gap:24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));}
.z-screen {padding:22px; background: var(--bg); border: 1px solid var(--edge); border-radius: var(--rad-l); box-shadow: var(--sh-s);}
.tabsFill {font-size:.84.98rem; color: var(--text-2); margin-bottom:11px;}

.el-panel {gap:13px; display: flex;}*.o-accordion{list-style: none;}
.el-panel .t-list {flex: 1;}body .o-accordion li a{padding:14px 0; font-size:.87.97rem; display: block; border-bottom: 1px solid var(--edge-2); color: var(--text); transition: color var(--tr), padding-left var(--tr);}html .o-accordion li:last-child a{widows:2; border-bottom:0 none; contain:none;}
.o-accordion li a:hover {padding-left:4px; color: var(--brand);}
.t-divider {padding:52px 0 35px;}

/* ---- footer ------------------------------------------------- */
.t-review-outer {border-top: 1px solid var(--edge); background: var(--bg-3);}
.el-pagination {display: grid; gap:38px; grid-template-columns: 1.6fr 1fr 1fr;}
@media (max-width: 760px) { .el-pagination {gap:23px; grid-template-columns: 1fr 1fr;} }
@media (max-width: 480px) { .el-pagination {grid-template-columns: 1fr;} }
.c-rating {font-size:.81.97rem; margin-bottom:20px; color: var(--text-2); max-width:316px;}

.el-toolbar-number img {margin-bottom:12px; height:34px; width:auto; font-variant-ligatures:normal; contain:none;}
.module-suffix-first {list-style: none;}
.module-suffix-first li {margin-bottom:13px;}
.module-suffix-first a {backface-visibility:visible; color: var(--text-2); font-size:.87.06rem;}
.module-suffix-first a:hover {color: var(--brand);}
.media-detail-warning {padding:18px 0; border-top: 1px solid var(--edge); text-align: center;}
.media-detail-warning p {font-size:.7.98rem; color: var(--text-2);}/* ---- reworked social icons (square tiles, monoline glyphs) --- */
.o-panel-separator{display: flex; list-style: none; gap:13px;}.o-panel-separator a{display: inline-flex; height:37px; transition: transform var(--tr), background var(--tr), color var(--tr), border-color var(--tr); border: 1px solid var(--edge); justify-content: center; color: var(--text-2); border-radius: var(--rad-m); background: var(--bg-2); align-items: center; width:42px;}
.o-panel-separator a:hover {transform: translateY(-3px); border-color: var(--brand); background-blend-mode:normal; font-variant-caps:normal; color:#box-name; background: var(--brand);}
.o-panel-separator svg {height:22px; width:15px;}

/* ---- back to top -------------------------------------------- */
.progressExpand {bottom:30px; position: fixed; display: flex; color: var(--head); z-index: 900; height:44px; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr), color var(--tr); box-shadow: var(--sh-m); justify-content: center; opacity:0; right:27px; transform: translateY(10px); border: 1px solid var(--edge); align-items: center; border-top-left-radius:9px;border-top-right-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px; visibility: hidden; width:48px; background: var(--bg);}
.progressExpand.show {transform: none; visibility: visible; opacity:1;}
.progressExpand:hover {color:#box-name;}
.progressExpand:hover {background: var(--brand); border-color: var(--brand); transform: translateY(-2px);}

/* ---- cookie ------------------------------------------------- */
.o-carousel-data {background: var(--head); z-index: 1100; left:0; color:rgba(255, 255, 240, 0.9); position: fixed; text-decoration-skip-ink:auto; transform-style:flat; transition:transform 0.411s ease; right:0; transform: translateY(100%); padding:18px 0; bottom:0;}
.o-carousel-data.show {word-spacing:normal; transform: none; break-inside:auto;}
.o-carousel-data p {text-decoration-skip-ink:auto; line-height:1.5; font-size:.84.93rem;}
.ui-popover-input {gap:22px; justify-content: space-between; align-items: center; display: flex;}
.o-carousel-data a {font-variant-ligatures:normal; shape-margin:0; color:rgb(111, 213, 167);}
.o-carousel-data .screen-selected {flex: none;}
@media (max-width: 600px) { .ui-popover-input {text-align: center; flex-direction: column;} }/* ---- :target auth modals (markup lives at end of body) ------ */
.l-page-toggle{z-index: 1300; inset:0; visibility: hidden; align-items: center; opacity:0; padding-top:18px;padding-right:18px;padding-bottom:18px;padding-left:18px; position: fixed; transition:opacity 0.273s ease, visibility 0.246s ease; display: flex; justify-content: center;}body .l-page-toggle:target{opacity:1; visibility: visible;}
.el-section-number {backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px); inset:0rem; position: absolute; background:rgba(25, 26, 33, 0.49);}.el-layout{padding-top:36px;padding-right:36px;padding-bottom:36px;padding-left:36px; transform: translateY(14px) scale(.98); max-width:412px; box-shadow: var(--sh-l); background: var(--bg); width:100%; position: relative; transition:transform 0.261s ease; border-radius: var(--rad-l);}*.l-drawer{line-height:1; justify-content: center; transition: background var(--tr), color var(--tr); display: flex; height:33px; color: var(--text-2); position: absolute; border-radius:8px; right:18px; align-items: center; top:14px; width:38px; font-size:21px;}html .l-page-toggle:target .el-layout{transform: none;}
.l-drawer:hover {color: var(--head); background: var(--bg-2);}*.viewLink{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual; text-align: center; font-size:.85.04rem; color: var(--text-2); margin-top:12px;}.t-toggle{margin-bottom:22px; font-size:.85.06rem; color: var(--text-2);}/* ---- reveal ------------------------------------------------- */
.app-status-slot{transition:opacity 0.604s ease, transform 0.608s ease; transform: translateY(22px); opacity:0;}
.app-status-slot.in {opacity:1; transform: none; background-blend-mode:normal; font-variant-caps:normal;}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {transition:none !important; scroll-behavior: auto !important; animation:none !important;}.app-status-slot:not(._b4573b){transform: none; opacity:1; text-underline-offset:auto;}
}

@media print {
  .ui-view-inner, .t-breadcrumb, .o-comment, .t-accordion, .ui-header-line, .progressExpand, .o-carousel-data, .l-page-toggle, .app-step {display: none !important;}
  .t-chip-expand {max-width:100%;}.c-nav-action:not(._b4573b){border:none; transform-style:flat; box-shadow:none; padding:0; text-rendering:auto;}body{page-break-inside:auto; font-size:12pt;}
}
