

*, *::before, *::after {padding:0; margin:0;}/* ============================================================
   1017_new_v1 — stylesheet
   ============================================================ */

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

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

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

body {-moz-osx-font-smoothing:grayscale; color: var(--text); line-height:1.72; background: var(--bg); font-family: var(--text-font); -webkit-font-smoothing:antialiased; font-size:0.92rem;}

img, svg {display: block; max-width:100%;}
ul, ol {list-style: none;}
a {text-decoration:none; color: var(--acc);}
button {cursor: pointer; background-blend-mode:normal; will-change:auto; font-family:inherit;}a:hover{color: var(--acc-d);}h1{font-family: var(--display); line-height:1.18; font-weight:700; letter-spacing:-0.015em; color: var(--ink);}:focus-visible{border-radius:-1px; outline-offset:2px; outline: 2px solid var(--acc);}

.justify-24 {height:1px; margin:-1px; border:0; overflow: hidden; clip:rect(0, 0, 0, 0); white-space: nowrap; padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px; position: absolute; width:1px;}

/* span headings (no h2/h3 anywhere but article content) */
.menu, .review-trigger-focused, .dot-table, .tabs-thumb, .pagination-even {color: var(--ink); font-weight:700; letter-spacing:-0.01em; font-synthesis:weight style small-caps; will-change:auto; font-family: var(--display); display: block;}
.menu {font-size:1.29rem; margin-bottom:1.05rem;}
.review-trigger-focused {widows:2; font-size:1.04rem; margin-bottom:0.26rem;}
.dot-table {margin-bottom:1.18rem; font-size:1.2rem;}

/* ---------- topbar ---------- */
.screen-secondary-outlined {border-bottom: 1px solid var(--edge); backdrop-filter:saturate(150%) blur(8px); top:0; background:rgba(249, 255, 237, 0.82); position: sticky; z-index: 1000;}

/* ---------- scroll progress ---------- */
.popover-row {height:7px; background: var(--acc); z-index: 1200; top:0; left:0; mix-blend-mode:normal; transition:width 0.119s linear; width:0px; position: fixed;}
.accordion-slot-horizontal {margin-inline:auto; max-width: var(--max); background-blend-mode:normal; display: flex; padding:0 1.23rem; align-items: center; width:100%; min-height:3.93rem; justify-content: space-between; gap:0.95rem;}
.avatar-outer:not(:last-child) {overflow:visible; max-width:1120px}

.actionWrap {perspective:none; transform-style:flat; display: inline-flex; align-items: center;}*.actionWrap img{width:auto; height:31px;}
.dialog__content {overflow:visible; transition:transform 0.25s ease-in-out}


.screen {border:0 none; font-synthesis:weight style small-caps; flex-direction: column; background:none; font-variant-ligatures:normal; padding-top:0.38rem;padding-right:0.38rem;padding-bottom:0.38rem;padding-left:0.38rem; display: none; gap:4px;}
.screen span {height:2px; width:25px; background: var(--ink); border-radius:2px; display: block;}

.c-skeleton-addon {display: flex; gap:1.73rem; align-items: center;}
#progress-meta {max-width:860px; transition:all 0.25s ease}
body .pagination__suffix{gap:1.46rem; display: flex;}
.pagination__suffix a, .bar-carousel {letter-spacing:0.03em; font-size:0.8rem; color: var(--text); isolation:auto; text-transform:uppercase; font-weight:600; font-synthesis:weight style small-caps;}
.pagination__suffix a:hover, .bar-carousel:hover {color: var(--acc);}
.c-page-column {border-radius: var(--rad-s); background: var(--acc); text-transform:uppercase; padding:0.63rem 1.13rem; transition:background 0.171s; font-weight:bold; letter-spacing:0.03em; color:#f3f8ff; font-size:0.77rem;}
.c-banner-bar {display: flex; gap:0.99rem; align-items: center;}
.c-page-column:hover {background: var(--acc-d); color:#fff2ef;}
.banner-text.reply-small {transition:opacity 0.2s; height:auto; position:relative; letter-spacing:normal}

.c-page-column:hover {hyphens:manual;}

/* ---------- post ---------- */
.px-end {max-width: var(--read); border-radius: var(--rad); background: var(--card); margin:1.52rem auto 0; box-shadow: var(--sh); overflow: hidden; border: 1px solid var(--edge);}/* ---------- flow / shell ---------- */
.c-sort-meta{padding-bottom:4rem;}
.preview-review {font-synthesis:weight style small-caps; padding:2.35rem 2.59rem 1.37rem; page-break-inside:auto;}

.form-right {display: flex; color: var(--dim); font-size:0.81rem; gap:0.54rem 1.25rem; align-items: center; flex-wrap: wrap;}.mediaCap{margin-bottom:0.83rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}html .alert-summary{display: inline-flex; image-rendering:auto; align-items: center; gap:0.45rem;}.alert-summary svg{opacity:0.71; flex-shrink: 0;}
.tagNumber {font-style:italic;}

/* toc */
.c-feature-primary {padding:0 2.65rem;}
.review-group-disabled {border-radius: var(--rad-s); background: var(--bg-2); padding:1.05rem 1.18rem; border: 1px solid var(--edge);}.price-separator{display: flex; justify-content: space-between; align-items: center;}.meta-header{background:none; display: inline-flex; color: var(--dim); border:none; padding:0.27rem; transition:transform 0.191s, color 0.228s;}
.tabs-thumb {font-size:0.96rem; margin:0;}html .meta-header:hover{color: var(--acc);}.review-group-disabled.is-shut .meta-header:not(.placeholder94){transform: rotate(-90deg);}
.review-group-disabled.is-shut .c-panel-label {display: none;}
.c-panel-label {shape-margin:0; background-blend-mode:normal; padding-top:0.73rem; border-top: 1px solid var(--edge); margin-top:0.82rem; line-height:1.9; font-size:0.84rem;}
.c-panel-label a {display: block; color: var(--text);}
.c-panel-label a:hover {color: var(--acc);}/* rich content */
.mr-2xl{padding:1.43rem 2.66rem 0.31rem;}
.c-panel-label .comment-backdrop-sticky {padding-left:1.15rem; font-size:0.78rem;}
.line-footer {font-variant-ligatures:normal; line-height:1.8; mix-blend-mode:normal; font-size:1.08rem; color: var(--text);}
@media (max-width: 1440px) {
  .form-action:hover {display:inline-block; transition:transform 0.25s ease-in-out; overflow:visible; padding-bottom:16px; gap:0.875rem}
  .rating--odd {border-radius:50%; min-height:100vh; transition:opacity 0.2s; padding-top:1rem}
  .widget-dot:first-child {padding:2.5rem; text-align:right; transition:all 0.35s ease}
}


.line-footer > * + * {hyphens:manual; margin-top:1.28rem;}
.line-footer h2 {margin-top:2.35rem; line-height:1.3; font-size:1.47rem; border-top: 1px solid var(--edge-2); scroll-margin-top:5rem; padding-top:1.36rem; color: var(--ink); font-family: var(--display);}
.line-footer h3 {color: var(--ink); font-family: var(--display); font-size:1.24rem; margin-top:1.7rem; scroll-margin-top:5rem; font-variant-caps:normal;}
.line-footer h4 {font-family: var(--display); font-size:1.12rem; margin-top:1.38rem; color: var(--ink);}
.line-footer a {text-decoration-thickness:1px; text-decoration:underline; text-underline-offset:2px;}body .line-footer strong, html .line-footer b{font-weight:700; color: var(--ink);}
.line-footer ul, .line-footer ol {margin-left:1.24rem;}*.line-footer ul{list-style: disc;}
.line-footer ol {list-style: decimal;}
.post-body .form-head {overflow:hidden; margin-bottom:1.125rem; transition:transform 0.4s ease-in-out}

.line-footer li {padding-left:0.25rem; margin-top:0.37rem;}
.line-footer img {margin:1.53rem 0; border-radius: var(--rad-s);}
.line-footer blockquote {border-left: 3px solid var(--acc); background: var(--tint); border-radius: 0 var(--rad-s) var(--rad-s) 0; font-style:italic; padding-top:0.81rem;padding-right:1.3rem;padding-bottom:0.81rem;padding-left:1.3rem; color: var(--ink);}
.line-footer code {border-radius:4px; font-size:0.91em; padding:0.14em 0.49em; border: 1px solid var(--edge); background: var(--bg-2); font-family:ui-monospace, "SF Mono", "Courier New", monospace;}body .line-footer pre{color:hsl(314, 33.1%, 94.5%); font-size:0.84rem; background: var(--night); overflow-x: auto; line-height:1.7; padding:1.14rem 1.27rem; border-radius: var(--rad-s);}
.line-footer pre code {mix-blend-mode:normal; padding:0; background:none; color:inherit; border:0;}
.line-footer table {width:100%; border-collapse:collapse; font-size:0.98rem;}body .line-footer th, html .line-footer td{text-align: left; padding:0.62rem 0.79rem; border: 1px solid var(--edge);}
.line-footer th {color: var(--ink); orphans:2; font-weight:700; background: var(--bg-2);}
.line-footer hr {border:0 none; border-top: 1px solid var(--edge); margin:2.02rem 0;}
.tooltip__date {transition:opacity 0.25s; max-width:220px}

.sort-action::before {content:''; width:100%}
/* share */
.c-layout-button{padding:1.75rem 2.52rem 2.33rem;}
.rating-suffix {gap:0.61rem; flex-wrap: wrap; display: flex;}.ui-module:not(.dummy87){border: 1px solid var(--edge); transition:background 0.179s, color 0.234s, border-color 0.183s, transform 0.098s; height:42px; background: var(--card); color: var(--dim); width:40px; display: inline-flex; justify-content: center; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; align-items: center;}
.ui-module:hover {border-color: var(--acc); background: var(--acc); color:hsl(179, 99.3%, 95.5%); transform: translateY(-1px);}/* ---------- talk / reach (forms) ---------- */
:where(.breadcrumb-primary), *.reply{box-shadow: var(--sh); background: var(--card); border-radius: var(--rad); margin:2.17rem auto 0; padding:2.07rem 2.62rem 2.07rem; max-width: var(--read); border: 1px solid var(--edge);}

/* ---------- more (related) ---------- */
.status-backdrop {max-width: var(--read); margin:2.19rem auto 0;}*.grid-expand-primary{margin-top:-0.68rem; margin-bottom:1.25rem; font-size:0.99rem; color: var(--dim);}html .table__meta--expanded{display: grid; grid-template-columns: repeat(3, 1fr); gap:1.05rem;}
.toggle-elevated {transition:transform 0.177s, box-shadow 0.122s, border-color 0.151s; border: 1px solid var(--edge); box-shadow: var(--sh); display: block; border-radius: var(--rad-s); background: var(--card); padding-top:1.06rem;padding-right:1.19rem;padding-bottom:1.06rem;padding-left:1.19rem;}
.toggle-elevated:hover {box-shadow: var(--sh-l); border-color: var(--acc-l); transform: translateY(-2px);}
.px-end {font-size:0.96rem; font-weight:700; color: var(--ink); font-family: var(--display); line-height:1.4;}/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea{background: var(--bg-2); padding-top:0.7rem; padding-right:0.99rem; padding-bottom:0.7rem; padding-left:0.99rem; color: var(--ink); border-radius: var(--rad-s); border: 1px solid var(--edge); width:100%;}/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea{transition:border-color 0.213s, box-shadow 0.226s, background 0.224s; font:inherit;}
input::placeholder, textarea::placeholder {isolation:auto; perspective:none; color: var(--dim);}textarea{backface-visibility:visible; min-height:6.46rem; contain:none; resize: vertical;}
input:focus, textarea:focus {background: var(--card); page-break-inside:auto; border-color: var(--acc); outline:0; box-shadow:0 0 0 6px rgba(12, 146, 133, 0.19);}

.progress-wrapper-secondary {gap:0.92rem; flex-wrap: wrap; display: flex;}
.snackbar-default {min-width:0; flex: 1 1 calc(50% - 0.5rem);}.nav-narrow{display: flex;}
.c-tag-area {flex: 1 1 100%;}
.nav-narrow input {min-width:0; border-radius: var(--rad-s) 0 0 var(--rad-s); flex: 1; border-right:none;}html .nav-narrow .skeleton__toggle{border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.skeleton__toggle {text-transform:uppercase; gap:0.5rem; letter-spacing:0.03em; justify-content: center; border: 1px solid var(--edge); align-items: center; background: var(--card); transition:background 0.147s, color 0.236s, border-color 0.145s; font-weight:700; font-size:0.77rem; border-radius: var(--rad-s); padding-top:0.64rem;padding-right:1.35rem;padding-bottom:0.64rem;padding-left:1.35rem; color: var(--ink); min-height:2.93rem; display: inline-flex;}body .skeleton__toggle:hover{color: var(--ink);}body .skeleton__toggle:hover{background: var(--bg-2); border-color: var(--dim);}.table-horizontal{background: var(--acc); border-color: var(--acc); color:#edf4f3;}
.table-horizontal:hover {color:hsl(32, 63.1%, 95.7%); background: var(--acc-d); border-color: var(--acc-d);}
.date-skeleton {padding-top:0.63rem;padding-right:0.94rem;padding-bottom:0.63rem;padding-left:0.94rem; min-width:2.95rem;}
.dialog-wide {break-inside:auto; text-rendering:auto; width:100%;}/* ---------- decks (newsletter + account) ---------- */
:where(.search-thumb-flat){display: grid; grid-template-columns: 1fr 1fr; margin:2.57rem auto 0; gap:1.29rem; max-width: var(--band);}
.card-odd {border: 1px solid var(--edge); background: var(--card); display: flex; border-radius: var(--rad); flex-direction: column; padding:1.45rem 1.65rem; box-shadow: var(--sh);}*.justify-sm{margin-bottom:0.92rem; color: var(--dim); font-size:0.92rem;}
.select-backdrop {display: flex; gap:0.57rem; flex-direction: column; margin-top:auto;}
.select-backdrop .skeleton__toggle {width:100%; font-variant-caps:normal;}
.c-toggle-indicator {flex-wrap: wrap; width:100%; gap:1.58rem; margin-inline:auto; justify-content: space-between; padding:0 1.33rem; display: flex; align-items: center; max-width: var(--max);}

/* ---------- footer ---------- */
.nav-danger {margin-top:3.38rem; padding:2.64rem 0; color: var(--on-night); background: var(--night);}
.profile-dot img {height:24px; width:auto; filter:brightness(0) invert(1); opacity:0.91;}
.thumb-view {break-inside:auto; display: flex; gap:1.27rem; font-variant-caps:normal;}
.banner-toggle {margin-top:0.74rem; font-size:0.74rem; color: var(--on-night);}
.thumb-view a {color: var(--on-night); font-size:0.89rem;}.thumb-view a:hover{color:#edf0ef;}

.footerSeparator {-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual; gap:0.56rem; display: flex; word-spacing:normal;}
.rating--odd {cursor:default; display:inline; transition:opacity 0.25s; text-decoration:none; margin-left:auto; margin-top:1.125rem}
.footerSeparator a{transition:background 0.156s, color 0.257s, transform 0.169s; height:33px; hyphens:manual; align-items: center; background:rgba(239, 255, 253, 0.07); width:35px; justify-content: center; color: var(--on-night); border-radius: var(--rad-s); font-synthesis:weight style small-caps; display: inline-flex;}body .footerSeparator a:hover{transform: translateY(-1px); color:#ffffff; background: var(--acc);}

/* ---------- back to top ---------- */
.detail-counter {transition:background 0.149s, transform 0.231s; height:43px; position: fixed; box-shadow: var(--sh-l); bottom:1.65rem; border:0 none; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; background: var(--acc); justify-content: center; width:43px; color:#f4ffff; right:1.66rem; align-items: center; z-index: 900; display: none;}
.detail-counter:hover {transform: translateY(-2px); background: var(--acc-d);}
.pagination-area:not(:last-child) {transition:transform 0.3s ease-in-out; color:#e3d9d8}

.detail-counter.c-dropdown-subtitle {display: inline-flex;}/* ---------- cookie ---------- */
:where(.banner-input-elevated){background: var(--card); right:0; padding:0.92rem 0; left:0; position: fixed; bottom:0; border-top: 1px solid var(--edge); z-index: 1100; box-shadow:0 -5px 23px rgba(16, 47, 35, 0.03);}body .banner-input-elevated p{font-size:0.74rem; margin:0; color: var(--text);}
.widget-dot:first-child {overflow:hidden; padding-left:0.625rem; transition:all 0.5s ease; gap:0.375rem}

.l-media-group {max-width: var(--max); padding:0 1.2rem; margin-inline:auto; mix-blend-mode:normal; display: flex; align-items: center; gap:1.55rem; width:100%; justify-content: space-between;}/* ---------- auth layers (CSS :target modal) ---------- */
.font-inline{inset:0; z-index: 1300; display: none; position: fixed;}
.banner-input-elevated .skeleton__toggle {flex-shrink: 0; min-height:2.48rem; padding:0.55rem 1.35rem;}
.font-inline:target {display: grid; place-items: center; padding:1.29rem;}
.panel-preview {backdrop-filter:blur(2px); inset:0; background:rgba(19, 36, 22, 0.57); position: absolute;}
.c-page-close {position: relative; background: var(--card); border-radius: var(--rad); z-index: 1; animation:pop 0.161s ease-out; border: 1px solid var(--edge); box-shadow: var(--sh-l); width: min(94vw, 25rem); padding:1.77rem 1.88rem 1.66rem;}
#popover-meta {font-weight:bold; transition:color 0.4s}

@keyframes pop { from {transform: translateY(8px) scale(0.99); transform-style:flat; opacity:0; mix-blend-mode:normal;} to {opacity:1; contain:none; backface-visibility:visible; transform: none;} }
.alert-flat {position: absolute; color: var(--dim); right:0.82rem; text-decoration:none; top:0.65rem; font-size:1.53rem; line-height:1;}
.alert-flat:hover {color: var(--ink); page-break-inside:auto;}
.font-inline .accordion-wide {flex-direction: column; gap:0.85rem; display: flex;}
.dropdownNumber {text-align: center; color: var(--dim); margin-top:0.15rem; font-size:0.9rem;}
.form-action:hover {flex-wrap:wrap; position:relative; display:grid; justify-content:space-between}


/* ---------- responsive ---------- */
@media (max-width: 860px) {.screen{display: flex;}
  .c-skeleton-addon {flex-direction: column; border-bottom: 1px solid var(--edge); top:100%; gap:0; background: var(--card); padding:0.47rem 0; right:0; display: none; position: absolute; align-items: stretch; box-shadow: var(--sh); left:0;}.c-skeleton-addon.open:not(.skip72){mix-blend-mode:normal; word-spacing:normal; display: flex;}
  .pagination__suffix {padding:0 1.25rem; gap:0; flex-direction: column;}
  .pagination__suffix a {border-bottom: 1px solid var(--edge-2); padding:0.88rem 0;}
  .c-banner-bar {gap:0.76rem; padding:0.95rem 1.27rem 0.35rem;}

  .table__meta--expanded {grid-template-columns: 1fr 1fr;}
  .search-thumb-flat {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%;}.c-feature-primary{padding:0 1.48rem;}
  .preview-review {padding:1.74rem 1.43rem 1.06rem;}.mr-2xl{padding:1.38rem 1.44rem 0.33rem; text-rendering:auto;}
  .c-layout-button {padding:1.32rem 1.47rem 1.88rem;}.breadcrumb-primary, .reply{padding:1.57rem 1.39rem 1.87rem; print-color-adjust:economy;}.table__meta--expanded{grid-template-columns: 1fr;}html .c-toggle-indicator{align-items: flex-start; flex-direction: column; gap:1.23rem;}html .l-media-group{gap:0.76rem; text-align: center; flex-direction: column;}
}

@media (max-width: 460px) {
  .snackbar-default {flex: 1 1 100%;}
  .detail-counter {bottom:0.97rem; right:1.05rem;}
}

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

@media print {
  .screen-secondary-outlined, .c-layout-button, .breadcrumb-primary, .status-backdrop, .reply,
  .search-thumb-flat, .nav-danger, .detail-counter, .banner-input-elevated, .font-inline, .popover-row {display: none !important;}
  body {background-color:#fffff4;}
}
html .px-end{max-width:none; box-shadow:none; border:0 none;}