/* ============================================================
   1017_new_v1 — stylesheet
   ============================================================ */

:root {--bg-2: #popover-row; hyphens:manual; --night-2: #1d2c28; --text-font: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; --band: 62rem; --sh: 0 1px 2px rgba(20, 32, 29, 0.04), 0 6px 24px rgba(20, 32, 29, 0.06); --card: #site-thread; --on-night: rgba(255, 255, 255, 0.6); text-decoration-skip-ink:auto; --bg: #area-counter; --acc: #0d9488; --sh-l: 0 16px 50px rgba(20, 32, 29, 0.18); --edge: #status-detail; --display: "Sora", system-ui, sans-serif; --ink: #16221f; --acc-l: #2bb3a3; --max: 70rem; --text: #46535a; --dim: #79868c; --acc-d: #0f766e; --night: #14201d; --rad-s: 8px; --rad: 12px; --tint: rgba(13, 148, 136, 0.08); --read: 45rem; --edge-2: #modalTertiary;}

*, *::before, *::after {box-sizing: border-box; margin:0; padding:0;}

html {-moz-text-size-adjust:100%;scroll-behavior: smooth; -webkit-text-size-adjust:100%; font-size:111.6%; shape-margin:0;}body{font-family: var(--text-font); line-height:1.72; -moz-osx-font-smoothing:grayscale;}body{font-size:0.99rem; background: var(--bg); -webkit-font-smoothing:antialiased; color: var(--text);}
ul, ol {list-style: none;}img, svg{mix-blend-mode:normal; display: block; font-synthesis:weight style small-caps; max-width:100%;}
a {color: var(--acc); text-decoration:none;}a:hover{color: var(--acc-d); background-blend-mode:normal;}
button {cursor: pointer; font-family:inherit; transform-style:flat; will-change:auto;}

:focus-visible {border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; outline: 2px solid var(--acc); outline-offset:2px; mix-blend-mode:normal;}h1{font-weight:bold; font-family: var(--display); color: var(--ink); letter-spacing:-0.015em; line-height:1.18;}.tag__holder--left:not(._da44c4){break-inside:auto; margin:-1px; position: absolute; mix-blend-mode:normal; white-space: nowrap; height:1px; border:0; clip:rect(0, 0, 0, 0); overflow: hidden; padding:0rem; width:1px;}/* span headings (no h2/h3 anywhere but article content) */
.cap-skeleton, .entry--top:not(._da44c4), .drawer-action-loading, html .form__overlay--pressed, *.t-accordion{display: block; color: var(--ink); letter-spacing:-0.01em; font-weight:700; page-break-inside:auto; font-family: var(--display);}
.cap-skeleton {margin-bottom:1.03rem; font-size:1.3rem;}
.drawer-action-loading {margin-bottom:1.27rem; font-size:1.25rem;}
.entry--top {font-size:1.11rem; margin-bottom:0.27rem;}

/* ---------- topbar ---------- */
.dialog--right {border-bottom: 1px solid var(--edge); top:0; backdrop-filter:saturate(150%) blur(8px); background:rgba(250, 254, 255, 0.87); z-index: 1000; position: sticky;}

/* ---------- scroll progress ---------- */
.table__button {position: fixed; height:-1px; top:0; background: var(--acc); width:0; transition:width 0.048s linear; left:0; z-index: 1200;}
.price {display: inline-flex; align-items: center;}.py-12:not(._da44c4){width:100%; hyphens:manual; min-height:3.96rem; padding:0 1.27rem; display: flex; gap:1.02rem; margin-inline:auto; justify-content: space-between; align-items: center; max-width: var(--max);}

.search-input-sparse {gap:3px; display: none; background:none; border:none; flex-direction: column; padding:0.32rem;}
.price img {height:26px; width:auto;}
.search-input-sparse span {height:2px; background: var(--ink); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; width:22px; display: block;}*.sort__thumb{print-color-adjust:economy; display: flex; gap:1.8rem; align-items: center; transform-style:flat;}.block__column{-moz-tab-size:4;font-variant-ligatures:normal; tab-size:4; display: flex; gap:1.44rem;}
.block__column a, .gallery {color: var(--text); letter-spacing:0.03em; text-transform:uppercase;}
.block__column a, .gallery {font-size:0.87rem; font-weight:700;}
.block__column a:hover, .gallery:hover {color: var(--acc);}body .reply__secondary--narrow{gap:1rem; align-items: center; perspective:none; shape-margin:0; display: flex;}.counter--bottom{text-transform:uppercase; border-radius: var(--rad-s); font-size:0.71rem; padding:0.62rem 0.99rem; letter-spacing:0.03em; transition:background 0.154s; background: var(--acc); color:#app-footer; font-weight:700;}
.counter--bottom:hover {background: var(--acc-d); font-variant-ligatures:normal;}
.counter--bottom:hover {color:#app-footer;}/* ---------- flow / shell ---------- */
.list__suffix{padding-bottom:4.06rem;}

/* ---------- post ---------- */
.spinner__holder--half {background: var(--card); border-radius: var(--rad); margin:1.54rem auto 0; box-shadow: var(--sh); max-width: var(--read); overflow: hidden; border: 1px solid var(--edge);}.menu{padding:2.39rem 2.65rem 1.24rem;}.form:not(._da44c4){font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem); margin-bottom:0.79rem; hyphens:manual;}

.search--warning {color: var(--dim); flex-wrap: wrap; display: flex; font-size:0.81rem; align-items: center; gap:0.58rem 1.2rem;}
.popover--half {gap:0.38rem; display: inline-flex;}
.popover--half {align-items: center;}
.popover--half svg {opacity:0.67; flex-shrink: 0;}
.media {font-style:italic; text-underline-offset:auto; font-variant-caps:normal;}

/* toc */
.status__input {padding:0 2.57rem;}body .filter__preview--horizontal{padding:1.05rem 1.33rem; border-radius: var(--rad-s); background: var(--bg-2); border: 1px solid var(--edge);}
.counter {display: flex; align-items: center; justify-content: space-between;}
.form__overlay--pressed {font-size:0.94rem; margin:0;}
.comment__value--success {border:0 none; background:none; color: var(--dim); display: inline-flex; padding:0.13rem; transition:transform 0.219s, color 0.195s;}
.comment__value--success:hover {color: var(--acc);}
.filter__preview--horizontal.is-shut .comment__value--success {transform: rotate(-90deg);}
.filter__preview--horizontal.is-shut .snackbar {display: none;}
.snackbar {padding-top:0.57rem; line-height:1.9; border-top: 1px solid var(--edge); font-size:0.87rem; margin-top:0.75rem;}.snackbar a{color: var(--text); display: block;}
.snackbar a:hover {color: var(--acc);}

/* rich content */
.grid-end {padding:1.56rem 2.64rem 0.3rem;}
.snackbar .post--even {font-size:0.94rem; padding-left:1.11rem;}
.pageIcon {line-height:1.8;}
.pageIcon {orphans:2; color: var(--text); font-size:1.08rem;}.pageIcon > * + *{margin-top:1.26rem;}.pageIcon h2{color: var(--ink); font-family: var(--display); line-height:1.3; padding-top:1.35rem; scroll-margin-top:5rem; border-top: 1px solid var(--edge-2); margin-top:2.38rem; font-size:1.56rem;}
.pageIcon h3 {font-family: var(--display); color: var(--ink); word-spacing:normal; font-size:1.2rem; margin-top:1.73rem; scroll-margin-top:5rem;}*.pageIcon h4{color: var(--ink); margin-top:1.29rem; font-size:1rem; font-family: var(--display);}html .pageIcon a{shape-margin:0; text-underline-offset:2px; text-decoration-thickness:1px; font-synthesis:weight style small-caps; text-decoration:underline;}*.pageIcon strong, .pageIcon b{font-weight:bold; color: var(--ink);}
.pageIcon ul, .pageIcon ol {margin-left:1.23rem;}.pageIcon ul{list-style: disc;}
.pageIcon ol {list-style: decimal;}
.pageIcon li {padding-left:0.29rem; margin-top:0.47rem;}html .pageIcon img{margin:1.54rem 0; border-radius: var(--rad-s);}body .pageIcon blockquote{background: var(--tint); border-radius: 0 var(--rad-s) var(--rad-s) 0; color: var(--ink); orphans:2; border-left: 3px solid var(--acc); font-style:italic; padding:0.79rem 1.22rem;}
.pageIcon code {border-top-left-radius:9px;border-top-right-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px; background: var(--bg-2); font-size:0.95em; border: 1px solid var(--edge); font-family:ui-monospace, "SF Mono", "Courier New", monospace; padding:0.08em 0.51em;}
.pageIcon pre {color:#list_prefix; padding:1.17rem 1.3rem; line-height:1.7; overflow-x: auto; background: var(--night); border-radius: var(--rad-s); font-size:0.81rem;}
.pageIcon pre code {padding:0; border:0rem; color:inherit; background:none;}
.pageIcon table {border-collapse:collapse; width:100%; font-size:0.99rem;}
.pageIcon th, .pageIcon td {text-align: left; border: 1px solid var(--edge); padding:0.62rem 0.73rem;}
.pageIcon th {color: var(--ink); background: var(--bg-2); font-weight:bold;}
.pageIcon hr {border:0; border-top: 1px solid var(--edge); margin:1.93rem 0;}.toolbar__meta{display: flex; flex-wrap: wrap; gap:0.51rem;}

/* share */
.panel--narrow {padding:1.67rem 2.66rem 2.4rem;}
.table__expand {text-underline-offset:auto; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; justify-content: center; align-items: center; background: var(--card); transform-style:flat; height:38px; border: 1px solid var(--edge); color: var(--dim); width:40px; transition:background 0.243s, color 0.23s, border-color 0.217s, transform 0.21s; display: inline-flex;}
.table__expand:hover {background: var(--acc); transform: translateY(-1px); color:#app-footer; border-color: var(--acc);}
.feature__icon--dark {margin-top:-0.61rem; margin-bottom:1.27rem; color: var(--dim); font-size:0.99rem;}

/* ---------- talk / reach (forms) ---------- */
.drawer__cell, .progress--disabled {border-radius: var(--rad); border: 1px solid var(--edge); background: var(--card); box-shadow: var(--sh); padding:1.98rem 2.63rem 2.02rem; max-width: var(--read); margin:2.17rem auto 0;}

/* ---------- more (related) ---------- */
.dialog {margin:2.27rem auto 0; max-width: var(--read); text-underline-offset:auto;}
.post__spacer--dark {gap:0.93rem; display: grid; grid-template-columns: repeat(3, 1fr);}
.sectionCap {display: block;}
.sectionCap {box-shadow: var(--sh); border: 1px solid var(--edge); padding:1.04rem 1.16rem; background: var(--card); border-radius: var(--rad-s); transition:transform 0.135s, box-shadow 0.206s, border-color 0.238s;}body .sectionCap:hover{transform: translateY(-2px); box-shadow: var(--sh-l); border-color: var(--acc-l);}.rating__date--pressed{font-size:1.03rem; line-height:1.4; font-weight:700; font-family: var(--display); color: var(--ink);}
input::placeholder, textarea::placeholder {color: var(--dim);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border-radius: var(--rad-s); background: var(--bg-2); width:100%; border: 1px solid var(--edge); padding:0.69rem 0.98rem; font:inherit; color: var(--ink); transition:border-color 0.176s, box-shadow 0.163s, background 0.147s;}input:focus, textarea:focus{border-color: var(--acc); outline:0; box-shadow:0 0 0 5px rgba(21, 142, 153, 0.14); background: var(--card);}
textarea {resize: vertical; min-height:6.49rem;}.item-module{display: flex;}.item-module{gap:1.04rem; flex-wrap: wrap;}.badge-thumb:not(._da44c4){flex: 1 1 100%;}
.stepper__section--expanded {flex: 1 1 calc(50% - 0.5rem); min-width:0em;}.profileLine{text-rendering:auto; display: flex; font-variant-caps:normal;}
.profileLine input {border-radius: var(--rad-s) 0 0 var(--rad-s); border-right:0 none; min-width:0; flex: 1;}
.profileLine .tooltip__overlay {print-color-adjust:economy; will-change:auto; border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.tooltip__overlay {border-radius: var(--rad-s); font-size:0.75rem; align-items: center; color: var(--ink); justify-content: center; letter-spacing:0.03em; transition:background 0.165s, color 0.199s, border-color 0.161s; gap:0.5rem; min-height:2.81rem; display: inline-flex; border: 1px solid var(--edge); background: var(--card); text-transform:uppercase; padding:0.66rem 1.31rem; font-weight:700;}
.tooltip__overlay:hover {border-color: var(--dim); color: var(--ink); background: var(--bg-2);}
.section--pressed {color:#app-footer; border-color: var(--acc);}
.section--pressed {background: var(--acc);}.section--pressed:hover{border-color: var(--acc-d); background: var(--acc-d); color:#app-footer;}
.media--vertical {padding:0.69rem 0.93rem; background-blend-mode:normal; min-width:2.94rem; backface-visibility:visible;}html .stepper__detail{width:100%;}/* ---------- decks (newsletter + account) ---------- */
.table{margin:2.67rem auto 0; max-width: var(--band); grid-template-columns: 1fr 1fr; display: grid; gap:1.32rem;}
.menu__toggle--bottom {background: var(--card); padding:1.47rem 1.58rem; border-radius: var(--rad); box-shadow: var(--sh); border: 1px solid var(--edge); flex-direction: column; display: flex;}
.breadcrumb {font-size:0.89rem; color: var(--dim); margin-bottom:1.05rem;}
.banner {display: flex;}
.banner {margin-top:auto; flex-direction: column; gap:0.59rem;}.banner .tooltip__overlay{width:100%;}/* ---------- footer ---------- */
:where(.spinner__foot--rounded){padding:2.53rem 0; background: var(--night); color: var(--on-night); margin-top:3.36rem;}
.post--inverse {margin-inline:auto; display: flex; flex-wrap: wrap; padding:0 1.33rem; gap:1.54rem; align-items: center; justify-content: space-between; width:100%; max-width: var(--max);}.dialog__body img{filter:brightness(0) invert(1); width:auto; height:28px; opacity:0.85;}.col-inline{font-size:0.84rem; color: var(--on-night); text-rendering:auto; margin-top:0.71rem;}
.ui-profile-cap {display: flex; gap:1.28rem;}
.ui-profile-cap a {font-size:0.85rem; color: var(--on-night);}body .ui-profile-cap a:hover{color:#app-footer;}

.card__text--large {display: flex; gap:0.58rem;}
.card__text--large a {height:35px; display: inline-flex; border-radius: var(--rad-s); align-items: center; transition:background 0.256s, color 0.146s, transform 0.095s; color: var(--on-night); justify-content: center; width:40px; background:rgba(255, 241, 255, 0.02);}/* ---------- back to top ---------- */
.entry__thumb{z-index: 900; transition:background 0.194s, transform 0.176s; bottom:1.54rem; height:42px; position: fixed; background: var(--acc); color:#app-footer; align-items: center; justify-content: center; border:0rem; display: none; box-shadow: var(--sh-l); border-radius:50%; right:1.56rem; width:43px;}
.card__text--large a:hover {color:#app-footer; background: var(--acc); transform: translateY(-1px);}
.entry__thumb:hover {transform: translateY(-2px); background: var(--acc-d);}
.entry__thumb.ui-module {display: inline-flex;}/* ---------- cookie ---------- */
.t-box-backdrop{bottom:0; border-top: 1px solid var(--edge); box-shadow:0 -9px 24px rgba(7, 22, 19, 0.12); left:0; position: fixed; right:0; background: var(--card); padding:0.82rem 0; z-index: 1100;}.layout{align-items: center; gap:1.46rem; width:100%; text-rendering:auto; page-break-inside:auto; padding:0 1.21rem; display: flex; max-width: var(--max); justify-content: space-between; margin-inline:auto;}
.t-box-backdrop p {margin:0; font-size:0.86rem; color: var(--text);}
.t-box-backdrop .tooltip__overlay {min-height:2.38rem; flex-shrink: 0; padding:0.58rem 1.38rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.thread--default {inset:0; display: none; z-index: 1300; position: fixed;}
.banner__inner {background:rgba(18, 38, 44, 0.5); position: absolute; inset:0; backdrop-filter:blur(2px);}.thread--default:target{padding:1.22rem; display: grid; place-items: center;}
.status {padding:1.85rem 1.85rem 1.66rem; animation:pop 0.173s ease-out; border: 1px solid var(--edge); border-radius: var(--rad); position: relative; box-shadow: var(--sh-l); background: var(--card); z-index: 1; width: min(94vw, 25rem);}
@keyframes pop {from{opacity:0; transform: translateY(8px) scale(0.99);} to {opacity:1; transform: none;} }
.page__time {top:0.67rem; position: absolute; text-decoration:none; font-size:1.51rem; right:0.8rem; color: var(--dim); line-height:1;}
.thread--default .select {flex-direction: column; gap:0.88rem; display: flex;}.page__time:hover{color: var(--ink);}
.action__time--alt {margin-top:0.12rem; color: var(--dim); text-align: center; font-size:0.93rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .search-input-sparse {display: flex;}.sort__thumb{page-break-inside:auto; left:0; align-items: stretch; background: var(--card); top:100%; box-shadow: var(--sh); flex-direction: column; border-bottom: 1px solid var(--edge); mix-blend-mode:normal; right:0; display: none; padding:0.47rem 0; gap:0; position: absolute;}.open.sort__thumb{display: flex;}*.block__column{padding:0 1.29rem; gap:0rem; flex-direction: column;}
  .block__column a {border-bottom: 1px solid var(--edge-2); padding:0.81rem 0;}.reply__secondary--narrow{padding:0.95rem 1.29rem 0.41rem; gap:0.78rem;}
  .table {grid-template-columns: 1fr;}.post__spacer--dark{grid-template-columns: 1fr 1fr;}
}

@media (max-width: 680px) {html{font-size:100%;}
  .menu {padding:1.74rem 1.4rem 1.07rem;}.status__input{padding:0 1.36rem;}
  .panel--narrow {padding:1.25rem 1.46rem 1.92rem;}
  .grid-end {padding:1.37rem 1.32rem 0.38rem;}
  .drawer__cell, .progress--disabled {padding:1.55rem 1.34rem 1.76rem;}
  .post__spacer--dark {grid-template-columns: 1fr;}
  .post--inverse {flex-direction: column; align-items: flex-start; text-rendering:auto; gap:1.28rem; widows:2;}
  .layout {gap:0.88rem; flex-direction: column;}
  .layout {text-align: center;}
}

@media (max-width: 460px) {
  .stepper__section--expanded {flex: 1 1 100%;}
  .entry__thumb {right:1.02rem; bottom:1.06rem;}
}

@media (prefers-reduced-motion: reduce) {
  html {scroll-behavior: auto;}*{animation:none !important; transition:none !important;}
  body {background:#app-footer;}
}

@media print {
  .dialog--right, .panel--narrow, .drawer__cell, .dialog, .progress--disabled,
  .table, .spinner__foot--rounded, .entry__thumb, .t-box-backdrop, .thread--default, .table__button {display: none !important;}
}

  .spinner__holder--half {-webkit-hyphens:manual;-ms-hyphens:manual;max-width:none; box-shadow:none; hyphens:manual; border:0em;}