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

:root{--acc: #0d9488; --display: "Sora", system-ui, sans-serif; --max: 70rem; --sh-l: 0 16px 50px rgba(20, 32, 29, 0.18); --ink: #16221f; --band: 62rem; --sh: 0 1px 2px rgba(20, 32, 29, 0.04), 0 6px 24px rgba(20, 32, 29, 0.06); --rad: 12px; --acc-l: #2bb3a3; --text-font: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; --night-2: #1d2c28; --tint: rgba(13, 148, 136, 0.08); --rad-s: 8px; --edge: #snackbar-wrap; --text: #46535a; --bg-2: #main-media; --edge-2: #dropdownSeparator; --on-night: rgba(255, 255, 255, 0.6); --night: #14201d; --read: 45rem; --card: #stepper_summary; --dim: #79868c; --acc-d: #0f766e; --bg: #widgetFoot;}*, *::before, *::after{padding:0; margin:0; box-sizing: border-box;}

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

body {font-size:1.03rem; line-height:1.72; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; background: var(--bg); color: var(--text); font-family: var(--text-font);}img, svg{display: block; max-width:100%;}
ul, ol {list-style: none;}a{text-decoration:none; color: var(--acc);}
a:hover {color: var(--acc-d);}
button {font-family:inherit; cursor: pointer;}
h1 {line-height:1.18; letter-spacing:-0.015em; font-weight:700; color: var(--ink); font-family: var(--display);}

:focus-visible {border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px; outline-offset:2px; outline: 2px solid var(--acc);}

.image-tag {height:1px; width:1px; clip:rect(0, 0, 0, 0); position: absolute; border:0; margin:-1px; padding:0; overflow: hidden; white-space: nowrap;}

/* span headings (no h2/h3 anywhere but article content) */
.tooltipOverlay, .align-md, .progressBody, .formPrimary, .screenClose {font-weight:bold; font-family: var(--display); letter-spacing:-0.01em; display: block; color: var(--ink);}.tooltipOverlay:not(._8ee55e){-moz-tab-size:4;margin-bottom:1.08rem; tab-size:4; mix-blend-mode:normal; font-size:1.25rem;}.align-md{margin-bottom:0.26rem; font-size:1.13rem;}
.progressBody {margin-bottom:1.14rem; font-size:1.2rem;}

/* ---------- scroll progress ---------- */
.c-dialog-inner {position: fixed; z-index: 1200; top:0; width:0; background: var(--acc); height:-1px; transition:width 0.031s linear; left:0;}

/* ---------- topbar ---------- */
.badgeSeparator {backdrop-filter:saturate(150%) blur(8px); border-bottom: 1px solid var(--edge); top:0; z-index: 1000; background:rgba(255, 255, 242, 0.87); position: sticky;}
.searchFill {padding:0 1.28rem; align-items: center; display: flex; gap:1.08rem; width:100%; min-height:3.89rem; justify-content: space-between; max-width: var(--max); margin-inline:auto;}
.screen-placeholder {display: inline-flex; align-items: center;}
.screen-placeholder img {width:auto; height:31px;}

.screenArea {widows:2; gap:5px; flex-direction: column; background:none; padding-top:0.47rem;padding-right:0.47rem;padding-bottom:0.47rem;padding-left:0.47rem; display: none; transform-style:flat; border:0;}
.screenArea span {background: var(--ink); border-radius:2px; height:2px; display: block; width:20px;}

.actionInput {gap:1.82rem; align-items: center; display: flex;}
.threadTime {gap:1.58rem; display: flex;}
.threadTime a, .selectIcon {shape-margin:0; letter-spacing:0.03em; font-size:0.83rem; text-transform:uppercase; color: var(--text); font-weight:600;}body .threadTime a:hover, html .selectIcon:hover{color: var(--acc);}body .threadTime a:hover, html .selectIcon:hover{image-rendering:auto; mix-blend-mode:normal;}html .paginationArea{color:#post_foot; text-transform:uppercase; font-weight:700; transition:background 0.208s; background: var(--acc); border-radius: var(--rad-s); letter-spacing:0.03em; font-size:0.71rem; padding:0.57rem 1.07rem;}
.blockBlock {gap:0.98rem; display: flex; align-items: center;}/* ---------- flow / shell ---------- */
.moduleZone{padding-bottom:3.93rem;}
.paginationArea:hover {background: var(--acc-d); color:#post_foot;}
.tooltipPrefix {padding:2.48rem 2.64rem 1.22rem;}

/* ---------- post ---------- */
.viewSuffix {box-shadow: var(--sh); border-radius: var(--rad); background: var(--card); overflow: hidden; max-width: var(--read); margin:1.68rem auto 0; border: 1px solid var(--edge);}*.sidebarExtra{margin-bottom:0.91rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.entrySlot {color: var(--dim); gap:0.48rem 1.32rem; align-items: center; flex-wrap: wrap; display: flex; font-variant-caps:normal; font-size:0.74rem; break-inside:auto;}
.toggleDot {display: inline-flex; gap:0.46rem; align-items: center;}
.toggleDot svg {widows:2; flex-shrink: 0; background-blend-mode:normal;}
.toggleDot svg {opacity:0.65;}.featureCell{font-style:italic;}

/* toc */
.moduleNumber {padding:0 2.57rem; will-change:auto;}
.listContainer {padding:1.1rem 1.3rem; break-inside:auto; border: 1px solid var(--edge); border-radius: var(--rad-s); transform-style:flat; background: var(--bg-2);}
.heroToggle {display: flex; justify-content: space-between; align-items: center;}
.formPrimary {font-size:0.95rem; margin:0;}.reviewToggle{color: var(--dim); transition:transform 0.302s, color 0.259s; padding-top:0.26rem;padding-right:0.26rem;padding-bottom:0.26rem;padding-left:0.26rem; background:none; display: inline-flex; border:0 none;}*.reviewToggle:hover{color: var(--acc);}
.listContainer.is-shut .reviewToggle {transform: rotate(-90deg); font-synthesis:weight style small-caps; shape-margin:0;}body .listContainer.is-shut .popoverClose{display: none; isolation:auto; perspective:none;}body .popoverClose{padding-top:0.71rem; line-height:1.9; font-size:0.96rem; margin-top:0.72rem; border-top: 1px solid var(--edge);}body .popoverClose a{color: var(--text); display: block;}.popoverClose a:hover{color: var(--acc);}.popoverClose :where(.sortExpand){font-size:0.83rem; padding-left:1.16rem;}/* rich content */
.entryButton{padding:1.5rem 2.59rem 0.35rem;}
.sidebarItem {font-size:1.02rem; color: var(--text); contain:none; line-height:1.8;}body .sidebarItem > * + *{margin-top:1.25rem;}html .sidebarItem h2{scroll-margin-top:5rem; font-size:1.53rem; margin-top:2.22rem; font-family: var(--display); border-top: 1px solid var(--edge-2); line-height:1.3; color: var(--ink); padding-top:1.36rem;}
.sidebarItem h3 {color: var(--ink);}
.sidebarItem h3 {font-family: var(--display); font-size:1.25rem; scroll-margin-top:5rem; margin-top:1.63rem;}
.sidebarItem h4 {margin-top:1.37rem; font-family: var(--display); font-size:1.06rem; color: var(--ink);}
.sidebarItem a {text-underline-offset:2px; text-decoration:underline; text-decoration-thickness:1px;}html .sidebarItem strong, html .sidebarItem b{font-weight:700; color: var(--ink);}
.sidebarItem ul, .sidebarItem ol {margin-left:1.25rem;}
.sidebarItem ul {list-style: disc;}html .sidebarItem ol{list-style: decimal;}
.sidebarItem li {margin-top:0.4rem; padding-left:0.37rem;}.sidebarItem img{border-radius: var(--rad-s); margin:1.56rem 0;}
.sidebarItem blockquote {font-style:italic; color: var(--ink); border-radius: 0 var(--rad-s) var(--rad-s) 0;}
.sidebarItem blockquote {border-left: 3px solid var(--acc); padding:0.91rem 1.28rem; background: var(--tint);}html .sidebarItem 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-family:ui-monospace, "SF Mono", "Courier New", monospace; padding:0.17em 0.45em;}html .sidebarItem code{font-size:0.95em; border: 1px solid var(--edge);}
.sidebarItem pre {background: var(--night); overflow-x: auto; line-height:1.7; padding:1.09rem 1.38rem; border-radius: var(--rad-s); font-size:0.9rem; color:#main-nav;}.sidebarItem pre code{color:inherit; padding:0; border:none;}.sidebarItem pre code{background:none;}
.sidebarItem table {width:100%; border-collapse:collapse; font-size:0.98rem;}
.sidebarItem th, .sidebarItem td {padding:0.66rem 0.88rem; text-align: left; border: 1px solid var(--edge);}
.sidebarItem th {background: var(--bg-2); color: var(--ink); font-weight:700;}
.sidebarItem hr {border:0 none; margin:2.01rem 0; border-top: 1px solid var(--edge);}/* share */
.tableDetail{padding:1.75rem 2.68rem 2.36rem; shape-margin:0;}
.progressSuffix {color: var(--dim); background: var(--card); transition:background 0.233s, color 0.202s, border-color 0.221s, transform 0.157s; border-radius:50%; height:37px; width:39px; align-items: center; display: inline-flex; border: 1px solid var(--edge); justify-content: center;}.screenPrimary{gap:0.62rem; display: flex; flex-wrap: wrap;}.progressSuffix:hover{color:#post_foot; background: var(--acc); transform: translateY(-1px);}/* ---------- talk / reach (forms) ---------- */
:where(.o-toolbar), *.listData{padding:2.03rem 2.65rem 2.07rem; box-shadow: var(--sh); border-radius: var(--rad); border: 1px solid var(--edge); background: var(--card); margin:2.27rem auto 0; max-width: var(--read);}.progressSuffix:hover{border-color: var(--acc);}*.sidebarIcon{margin-top:-0.56rem; font-size:0.84rem; margin-bottom:1.27rem; color: var(--dim);}

/* ---------- more (related) ---------- */
.gallerySection {margin:2.25rem auto 0; max-width: var(--read); print-color-adjust:economy;}body .menuToggle{grid-template-columns: repeat(3, 1fr); gap:0.95rem; display: grid;}*.bannerInner{padding:1.04rem 1.1rem; background: var(--card); border-radius: var(--rad-s); display: block; transition:transform 0.167s, box-shadow 0.175s, border-color 0.182s; border: 1px solid var(--edge); box-shadow: var(--sh);}html .bannerInner:hover{box-shadow: var(--sh-l); border-color: var(--acc-l); transform: translateY(-2px);}
.overflow-8 {font-weight:700; font-size:1.03rem; color: var(--ink); line-height:1.4; font-family: var(--display);}/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea{width:100%; transition:border-color 0.225s, box-shadow 0.234s, background 0.256s; font:inherit; border: 1px solid var(--edge); padding:0.7rem 0.89rem; color: var(--ink); background: var(--bg-2); border-radius: var(--rad-s);}input::placeholder, textarea::placeholder{widows:2; color: var(--dim);}
input:focus, textarea:focus {background: var(--card); outline:0px; border-color: var(--acc); box-shadow:0 0 0 2px rgba(21, 160, 140, 0.2);}
textarea {min-height:6.43rem; resize: vertical;}.entryHolder:not(._8ee55e){min-width:0; flex: 1 1 calc(50% - 0.5rem);}

.snackbarPrimary {display: flex; flex-wrap: wrap; gap:0.99rem;}

.order-none {display: flex;}.progressHandle{flex: 1 1 100%;}
.order-none input {border-right:0; min-width:0; flex: 1; border-radius: var(--rad-s) 0 0 var(--rad-s);}
.order-none .ratingMeta {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.ratingMeta {text-transform:uppercase; gap:0.55rem; border-radius: var(--rad-s); justify-content: center; padding:0.75rem 1.3rem; letter-spacing:0.03em; font-weight:bold; transition:background 0.145s, color 0.15s, border-color 0.197s; font-size:0.81rem; border: 1px solid var(--edge); display: inline-flex; background: var(--card); align-items: center; color: var(--ink); min-height:2.83rem;}.ratingMeta:hover{border-color: var(--dim); background: var(--bg-2); color: var(--ink);}
.o-banner {color:#post_foot; border-color: var(--acc); background: var(--acc);}*.o-banner:hover{border-color: var(--acc-d); color:#post_foot; background: var(--acc-d);}
.sliderNumber {font-synthesis:weight style small-caps; min-width:3.07rem; will-change:auto; padding:0.71rem 1.01rem;}

/* ---------- decks (newsletter + account) ---------- */
.mediaTrigger {max-width: var(--band); grid-template-columns: 1fr 1fr; margin:2.61rem auto 0; gap:1.29rem; display: grid;}
.tagSection {width:100%;}
.dialogHead {box-shadow: var(--sh); background: var(--card); border-radius: var(--rad); border: 1px solid var(--edge); flex-direction: column; display: flex; mix-blend-mode:normal; font-variant-caps:normal; padding:1.47rem 1.55rem;}
.cardSummary {font-size:0.86rem; margin-bottom:1.02rem; color: var(--dim);}
.counterDate {gap:0.65rem; margin-top:auto; flex-direction: column; display: flex; isolation:auto; font-variant-caps:normal;}*.counterDate .ratingMeta{width:100%;}.modalWrap:not(._8ee55e){gap:1.47rem; padding:0 1.27rem; justify-content: space-between; flex-wrap: wrap; margin-inline:auto; display: flex; max-width: var(--max); width:100%; align-items: center;}/* ---------- footer ---------- */
:where(.layoutTime){color: var(--on-night); padding:2.68rem 0; background: var(--night); margin-top:3.47rem;}
.u-toggle img {width:auto;}
.u-toggle img {height:28px; filter:brightness(0) invert(1); opacity:0.87;}.view-wrapper:not(._8ee55e){color: var(--on-night); font-size:0.73rem; margin-top:0.72rem;}
.u-drawer {gap:1.23rem; display: flex;}.u-drawer a{color: var(--on-night); font-size:0.83rem;}html .pageOverlay{will-change:auto; image-rendering:auto; display: flex; gap:0.6rem;}
.u-drawer a:hover {isolation:auto; color:#post_foot;}
.pageOverlay a {justify-content: center; border-radius: var(--rad-s); height:32px; align-items: center;}
.pageOverlay a {width:36px; transition:background 0.152s, color 0.159s, transform 0.099s; background:rgba(253, 255, 250, 0.09); color: var(--on-night); orphans:2; display: inline-flex; isolation:auto;}
.pageOverlay a:hover {transform: translateY(-1px);}
.pageOverlay a:hover {background: var(--acc); color:#post_foot;}/* ---------- back to top ---------- */
.dialogSlot{right:1.57rem; z-index: 900; background: var(--acc); justify-content: center; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; box-shadow: var(--sh-l); transition:background 0.239s, transform 0.236s; width:43px; bottom:1.65rem; display: none; position: fixed; border:none; align-items: center; color:#post_foot; height:50px;}
.dialogSlot:hover {background: var(--acc-d); transform: translateY(-2px);}
.dialogSlot.tabsHolder {display: inline-flex;}
.progressWrapper {justify-content: space-between; display: flex; align-items: center; max-width: var(--max); gap:1.44rem; width:100%; padding:0 1.32rem; margin-inline:auto;}/* ---------- cookie ---------- */
.boxContainer:not(._8ee55e){right:0; left:0; background: var(--card); box-shadow:0 -7px 24px rgba(7, 30, 33, 0.09); border-top: 1px solid var(--edge); position: fixed; bottom:0; padding:0.93rem 0; z-index: 1100;}
.boxContainer p {color: var(--text); font-size:0.9rem; margin:0;}
.boxContainer .ratingMeta {flex-shrink: 0; min-height:2.39rem; padding:0.52rem 1.36rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.progressCell {inset:0; position: fixed; z-index: 1300; display: none;}
.progressCell:target {display: grid; place-items: center; padding:1.26rem;}
.modalName {border-radius: var(--rad); position: relative; box-shadow: var(--sh-l); width: min(94vw, 25rem); padding:1.82rem 1.79rem 1.68rem; animation:pop 0.231s ease-out; border: 1px solid var(--edge);}
.entryDate {inset:0; background:rgba(37, 18, 12, 0.61); backdrop-filter:blur(2px); position: absolute;}
.modalName {background: var(--card); z-index: 1;}
@keyframes pop { from {transform: translateY(8px) scale(0.99); opacity:0;}to{backface-visibility:visible; opacity:1; isolation:auto; transform: none;} }
.avatarFill {color: var(--dim);}
.avatarFill {text-decoration:none; position: absolute; line-height:1; top:0.78rem; font-size:1.53rem; right:0.93rem;}
.progressCell .featureOuter {display: flex; gap:0.95rem; flex-direction: column;}
.avatarFill:hover {color: var(--ink); text-underline-offset:auto; break-inside:auto;}
.stepperInner {color: var(--dim); text-align: center; font-size:0.79rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .screenArea {display: flex;}
.stepperInner {mix-blend-mode:normal; margin-top:0.24rem;}
  .actionInput {align-items: stretch; flex-direction: column; box-shadow: var(--sh); border-bottom: 1px solid var(--edge); display: none; right:0; left:0; padding:0.51rem 0; top:100%; position: absolute; background: var(--card); gap:0;}
  .actionInput.open {display: flex;}
  .threadTime {padding:0 1.31rem; flex-direction: column; gap:0px;}
  .blockBlock {gap:0.72rem; padding:0.88rem 1.28rem 0.38rem;}
  .threadTime a {border-bottom: 1px solid var(--edge-2); padding:0.79rem 0;}

  .menuToggle {grid-template-columns: 1fr 1fr;}
}

@media (max-width: 680px) {html{font-size:100%;}body .mediaTrigger{grid-template-columns: 1fr;}.tooltipPrefix:not(._8ee55e){padding:1.77rem 1.35rem 1.06rem; contain:none;}
  .moduleNumber {padding:0 1.38rem;}
  .entryButton {padding:1.24rem 1.34rem 0.34rem;}
  .tableDetail {padding:1.35rem 1.46rem 1.97rem;}
  .o-toolbar, .listData {padding:1.57rem 1.37rem 1.77rem;}
  .menuToggle {grid-template-columns: 1fr;}
  .modalWrap {gap:1.16rem; align-items: flex-start; text-decoration-skip-ink:auto; flex-direction: column;}
  .progressWrapper {flex-direction: column; text-align: center; gap:0.73rem;}
}

@media (max-width: 460px) {
  .entryHolder {flex: 1 1 100%;}
  .dialogSlot {bottom:0.93rem; right:0.95rem;}
}

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

@media print {
  .badgeSeparator, .tableDetail, .o-toolbar, .gallerySection, .listData,
  .mediaTrigger, .layoutTime, .dialogSlot, .boxContainer, .progressCell, .c-dialog-inner {display: none !important;}
  .viewSuffix {box-shadow:none; border:none; max-width:none;}
  body {background:#post_foot;}
}
