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

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

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

html {shape-margin:0; font-size:113.1%; -webkit-text-size-adjust:100%; scroll-behavior: smooth;}

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

img, svg {display: block; max-width:100%;}
a {text-decoration:none; color: var(--acc);}
ul, ol {list-style: none;}
a:hover {color: var(--acc-d);}
button {font-family:inherit; cursor: pointer;}
h1 {line-height:1.18; font-weight:700; letter-spacing:-0.015em; color: var(--ink); font-family: var(--display);}

:focus-visible {border-radius:0 none; outline-offset:2px; outline: 2px solid var(--acc);}

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

/* span headings (no h2/h3 anywhere but article content) */
.media-large, .close-drawer, .app-alert, .menu-inner-primary, .breadcrumb-secondary {font-weight:bold; display: block; color: var(--ink); font-family: var(--display); letter-spacing:-0.01em;}.media-large:not(._199d32){margin-bottom:1.04rem; font-size:1.32rem; text-rendering:auto; perspective:none;}
.app-alert {font-size:1.29rem; margin-bottom:1.28rem;}.close-drawer{margin-bottom:0.24rem; font-size:1.13rem;}

/* ---------- scroll progress ---------- */
.container-slider {top:0; page-break-inside:auto; left:0; background: var(--acc); z-index: 1200; width:0px; height:6px; transition:width 0.122s linear; position: fixed; backface-visibility:visible;}/* ---------- topbar ---------- */
.banner-thumb-flat{backdrop-filter:saturate(150%) blur(8px); position: sticky; z-index: 1000; background:rgba(255, 255, 255, 0.86); border-bottom: 1px solid var(--edge); top:0; will-change:auto;}*.c-reply-track{justify-content: space-between; gap:0.95rem; display: flex; min-height:3.87rem; max-width: var(--max); margin-inline:auto; padding:0 1.3rem; width:100%; align-items: center;}.box-dark{isolation:auto; word-spacing:normal; display: inline-flex; align-items: center;}
.box-dark img {height:33px; width:auto;}

.chip-outer {padding:0.33rem; display: none; background:none; gap:6px; flex-direction: column; border:none;}
.chip-outer span {background: var(--ink); width:19px; display: block; height:2px; border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px;}

.modal-separator-warning {display: flex; align-items: center; gap:1.81rem;}
.view-placeholder {display: flex; gap:1.47rem;}
.view-placeholder a, .l-alert {font-size:0.79rem; letter-spacing:0.03em; color: var(--text); font-weight:500; text-transform:uppercase;}
.view-placeholder a:hover, .l-alert:hover {color: var(--acc);}
.widget--horizontal {padding:0.51rem 0.98rem; transition:background 0.212s; text-transform:uppercase; font-size:0.73rem; color:#main-hero; background: var(--acc); border-radius: var(--rad-s); font-weight:700; letter-spacing:0.03em;}html .menu-large{display: flex; gap:1.06rem; align-items: center;}
.widget--horizontal:hover {background: var(--acc-d); color:#main-hero;}

/* ---------- flow / shell ---------- */
.grid-inverse {widows:2; padding-bottom:3.98rem;}/* ---------- post ---------- */
.zone-view:not(._199d32){background: var(--card); margin:1.59rem auto 0; border: 1px solid var(--edge); border-radius: var(--rad); overflow: hidden; max-width: var(--read); box-shadow: var(--sh);}*.c-tooltip{padding:2.48rem 2.58rem 1.34rem;}

.c-action-bar {gap:0.44rem 1.24rem; align-items: center; color: var(--dim); flex-wrap: wrap; font-size:0.9rem; display: flex;}
.screen-trigger {margin-bottom:0.93rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}
.carousel__slot--pressed {display: inline-flex; align-items: center; gap:0.41rem;}
.carousel__slot--pressed svg {flex-shrink: 0; opacity:0.69;}
.price-summary-large {font-style:italic;}
.badge-inner {padding:1.03rem 1.24rem; border: 1px solid var(--edge); border-radius: var(--rad-s); background: var(--bg-2);}

/* toc */
.comment__addon {padding:0 2.59rem;}.accordion-indicator:not(._199d32){align-items: center; display: flex; justify-content: space-between;}
.menu-inner-primary {transform-style:flat; font-size:0.97rem; margin:0;}
.c-popover-meta {padding:0.28rem; color: var(--dim); background:none; hyphens:manual; display: inline-flex; transition:transform 0.291s, color 0.167s; border:none;}
.c-popover-meta:hover {color: var(--acc);}.badge-inner.is-shut :where(.c-popover-meta){transform: rotate(-90deg);}
.badge-inner.is-shut .badge-row-alt {display: none;}html .badge-row-alt{font-size:0.89rem;}html .badge-row-alt{margin-top:0.75rem; padding-top:0.69rem; border-top: 1px solid var(--edge); line-height:1.9;}body .badge-row-alt a{color: var(--text); display: block;}
.badge-row-alt a:hover {color: var(--acc); break-inside:auto; perspective:none;}.badge-row-alt .chipImage{font-size:0.86rem; padding-left:1.18rem;}

/* rich content */
.area-list {padding:1.45rem 2.62rem 0.24rem;}
.step-default {color: var(--text); line-height:1.8; font-size:1.1rem;}
.step-default > * + * {margin-top:1.16rem;}
.step-default h2 {scroll-margin-top:5rem; line-height:1.3; border-top: 1px solid var(--edge-2); font-family: var(--display); font-size:1.47rem; color: var(--ink); margin-top:2.33rem; padding-top:1.23rem;}
.step-default h3 {scroll-margin-top:5rem; margin-top:1.63rem; font-size:1.15rem; color: var(--ink); font-family: var(--display);}
.step-default h4 {color: var(--ink); margin-top:1.28rem; font-variant-caps:normal; font-size:1.14rem; font-family: var(--display);}
.step-default a {text-decoration-thickness:1px; text-decoration:underline; text-underline-offset:2px;}
.step-default strong, .step-default b {color: var(--ink); font-synthesis:weight style small-caps; font-weight:bold;}
.step-default ul, .step-default ol {margin-left:1.23rem;}
.step-default ul {list-style: disc;}
.step-default ol {-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual; list-style: decimal;}
.step-default li {padding-left:0.32rem; margin-top:0.33rem;}
.step-default img {margin:1.58rem 0; border-radius: var(--rad-s);}
.step-default blockquote {padding:0.86rem 1.19rem; border-radius: 0 var(--rad-s) var(--rad-s) 0; font-style:italic; background: var(--tint); color: var(--ink); border-left: 3px solid var(--acc);}body .step-default code{padding:0.1em 0.48em; background: var(--bg-2); border-radius:6px; font-family:ui-monospace, "SF Mono", "Courier New", monospace; border: 1px solid var(--edge); font-size:0.86em;}.step-default pre{font-size:0.82rem; font-variant-caps:normal; border-radius: var(--rad-s); padding:1.14rem 1.36rem; line-height:1.7; overflow-x: auto; background: var(--night); break-inside:auto; color:#formInfo;}
.step-default pre code {background:none; color:inherit; padding:0; border:0 none;}
.step-default table {border-collapse:collapse; width:100%; font-size:0.98rem;}
.step-default th, .step-default td {border: 1px solid var(--edge); padding:0.57rem 0.79rem; text-align: left;}
.step-default th {font-weight:700; color: var(--ink); background: var(--bg-2);}

/* share */
.fill-tabs {padding:1.78rem 2.62rem 2.45rem;}
.step-default hr {margin:1.93rem 0; font-variant-ligatures:normal; border:0; border-top: 1px solid var(--edge);}
.column-sidebar {display: flex; flex-wrap: wrap; gap:0.59rem;}
.c-status-extra {background: var(--card); mix-blend-mode:normal; height:41px; will-change:auto; display: inline-flex; transition:background 0.197s, color 0.231s, border-color 0.145s, transform 0.12s; color: var(--dim); border-radius:50%; justify-content: center; align-items: center; border: 1px solid var(--edge); width:36px;}

/* ---------- talk / reach (forms) ---------- */
.backdrop-screen, .c-entry-body {margin:2.18rem auto 0; border: 1px solid var(--edge); padding:1.99rem 2.67rem 2.16rem; border-radius: var(--rad); background: var(--card); box-shadow: var(--sh); max-width: var(--read);}*.c-status-extra:hover{image-rendering:auto; background: var(--acc); color:#main-hero; transform: translateY(-1px); border-color: var(--acc);}
.sort-button {margin-top:-0.59rem; font-size:0.95rem; color: var(--dim); margin-bottom:1.14rem;}/* ---------- more (related) ---------- */
.area-widget{margin:2.14rem auto 0; max-width: var(--read);}
.c-menu-count {display: grid; grid-template-columns: repeat(3, 1fr); gap:0.94rem;}
.dialogButton {border-radius: var(--rad-s); background: var(--card); display: block; border: 1px solid var(--edge); box-shadow: var(--sh); transition:transform 0.124s, box-shadow 0.158s, border-color 0.188s; padding:1.05rem 1.18rem;}
.dialogButton:hover {-webkit-hyphens:manual;-ms-hyphens:manual;border-color: var(--acc-l); box-shadow: var(--sh-l); hyphens:manual; transform: translateY(-2px);}body .review-foot-top{font-size:1rem; line-height:1.4; color: var(--ink); font-family: var(--display); font-weight:700;}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border-radius: var(--rad-s); font:inherit; border: 1px solid var(--edge); color: var(--ink); padding:0.72rem 0.96rem; width:100%;}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {background: var(--bg-2); transition:border-color 0.212s, box-shadow 0.197s, background 0.177s;}input::placeholder, textarea::placeholder{color: var(--dim);}input:focus, textarea:focus{outline:0; background: var(--card); box-shadow:0 0 0 3px rgba(15, 133, 135, 0.17);}input:focus, textarea:focus{text-decoration-skip-ink:auto; border-color: var(--acc);}
textarea {resize: vertical; min-height:6.45rem;}

.drawer {gap:0.96rem; display: flex; flex-wrap: wrap;}
.chip-expand {flex: 1 1 calc(50% - 0.5rem); min-width:0px;}

.suffix-page {display: flex;}
.c-reply-time {flex: 1 1 100%;}.suffix-page input{border-right:none;}.suffix-page input{min-width:0; border-radius: var(--rad-s) 0 0 var(--rad-s); flex: 1;}
.suffix-page .toggle-time-rounded {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.toggle-time-rounded {padding:0.7rem 1.32rem; display: inline-flex; border: 1px solid var(--edge); align-items: center; transition:background 0.191s, color 0.257s, border-color 0.245s; background: var(--card); font-size:0.84rem; font-weight:bold; color: var(--ink); border-radius: var(--rad-s); justify-content: center; min-height:2.9rem; letter-spacing:0.03em; gap:0.42rem; text-transform:uppercase;}body .toggle-time-rounded:hover{background: var(--bg-2); color: var(--ink); border-color: var(--dim);}html .c-footer-addon{background: var(--acc); border-color: var(--acc); color:#main-hero;}
.c-footer-addon:hover {border-color: var(--acc-d); background: var(--acc-d); color:#main-hero;}
.grid-center {width:100%;}*.visible-full{min-width:2.96rem; padding:0.72rem 1.03rem;}

/* ---------- decks (newsletter + account) ---------- */
.ui-pagination {grid-template-columns: 1fr 1fr;}
.inner-divider {border-radius: var(--rad); padding:1.56rem 1.6rem; display: flex;}

/* ---------- decks (newsletter + account) ---------- */
.ui-pagination {display: grid; max-width: var(--band); gap:1.17rem; margin:2.66rem auto 0;}
.inner-divider {border: 1px solid var(--edge); background: var(--card); flex-direction: column; box-shadow: var(--sh);}
.card-input-elevated {font-size:0.83rem;}
.card-input-elevated {margin-bottom:0.93rem; color: var(--dim);}
.ui-menu-dot {flex-direction: column; margin-top:auto; gap:0.57rem; display: flex;}/* ---------- footer ---------- */
.bar-grid{margin-top:3.45rem; padding:2.52rem 0; color: var(--on-night); background: var(--night);}.ui-menu-dot :where(.toggle-time-rounded){width:100%;}*.screen-info{padding:0 1.25rem; align-items: center; justify-content: space-between; display: flex; gap:1.44rem; max-width: var(--max); flex-wrap: wrap; width:100%; margin-inline:auto;}
.c-form-content img {filter:brightness(0) invert(1); width:auto; height:28px; opacity:0.77;}
.sidebar-indicator {margin-top:0.72rem; color: var(--on-night); font-size:0.81rem;}body .tag-wrap{gap:1.38rem; display: flex;}
.tag-wrap a {color: var(--on-night); font-size:0.84rem;}

.reply-link {display: flex; gap:0.56rem;}
.tag-wrap a:hover {color:#main-hero;}
.reply-link a {width:33px; border-radius: var(--rad-s); color: var(--on-night); transition:background 0.242s, color 0.243s, transform 0.171s; align-items: center; text-decoration-skip-ink:auto; background:rgba(255, 255, 255, 0.01); height:32px; justify-content: center; isolation:auto; display: inline-flex;}
.reply-link a:hover {color:#main-hero; background: var(--acc); transform: translateY(-1px);}

/* ---------- back to top ---------- */
.c-reply-spacer {display: none; position: fixed; align-items: center; color:#main-hero; right:1.52rem; box-shadow: var(--sh-l); border:0 none; z-index: 900; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; height:46px; justify-content: center; background: var(--acc); bottom:1.61rem; width:42px; transition:background 0.256s, transform 0.208s;}
.c-reply-spacer:hover {transform: translateY(-2px); background: var(--acc-d);}
.c-reply-spacer.alert-inner-full {display: inline-flex;}/* ---------- cookie ---------- */
.c-chip-wrapper:not(._199d32){padding:0.97rem 0; bottom:0; border-top: 1px solid var(--edge); z-index: 1100; background: var(--card); left:0; box-shadow:0 -10px 28px rgba(28, 33, 43, 0.05); right:0; position: fixed;}
.o-toolbar-region {display: flex; margin-inline:auto; max-width: var(--max); width:100%; padding:0 1.22rem; align-items: center; gap:1.48rem; justify-content: space-between;}*.c-chip-wrapper p{page-break-inside:auto; margin:0; font-synthesis:weight style small-caps;}*.c-chip-wrapper p{color: var(--text); font-size:0.81rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.c-select-primary {display: none; z-index: 1300; inset:0; position: fixed;}
.c-chip-wrapper .toggle-time-rounded {min-height:2.43rem; flex-shrink: 0; padding:0.58rem 1.41rem;}
.handle-drawer {inset:0; background:rgba(28, 15, 25, 0.48); backdrop-filter:blur(2px); hyphens:manual; position: absolute;}
.c-select-primary:target {place-items: center; padding-top:1.25rem;padding-right:1.25rem;padding-bottom:1.25rem;padding-left:1.25rem; display: grid;}
.o-table {position: relative; width: min(94vw, 25rem); animation:pop 0.214s ease-out; z-index: 1; padding:1.72rem 1.73rem 1.56rem; border: 1px solid var(--edge); background: var(--card); box-shadow: var(--sh-l); border-radius: var(--rad);}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);} to {opacity:1; transform: none;} }
.comment-even {line-height:1; position: absolute; font-size:1.42rem; color: var(--dim); right:0.79rem; top:0.63rem; break-inside:auto; text-decoration:none;}html .c-select-primary .c-carousel-summary{gap:0.98rem; flex-direction: column; display: flex;}
.comment-even:hover {color: var(--ink); orphans:2;}
.badge-primary {color: var(--dim); margin-top:0.22rem; text-align: center; font-size:0.85rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .chip-outer {display: flex;}
  .modal-separator-warning {right:0; gap:0; padding:0.55rem 0; box-shadow: var(--sh); position: absolute; left:0; flex-direction: column; top:100%; display: none; background: var(--card); align-items: stretch; border-bottom: 1px solid var(--edge);}
  .modal-separator-warning.open {display: flex; font-variant-ligatures:normal;}
  .view-placeholder {gap:0; padding:0 1.22rem; flex-direction: column;}body .menu-large{padding:0.85rem 1.27rem 0.33rem; gap:0.74rem;}*.view-placeholder a{border-bottom: 1px solid var(--edge-2); padding:0.72rem 0;}.c-menu-count{grid-template-columns: 1fr 1fr;}
  .ui-pagination {grid-template-columns: 1fr; print-color-adjust:economy;}
}

@media (max-width: 680px) {
  html {font-size:100%;}
  .c-tooltip {padding:1.83rem 1.41rem 1.11rem;}
  .comment__addon {padding:0 1.38rem;}.area-list{padding:1.25rem 1.38rem 0.35rem;}
  .fill-tabs {text-decoration-skip-ink:auto; padding:1.24rem 1.43rem 1.83rem;}body .backdrop-screen, html .c-entry-body{padding:1.6rem 1.43rem 1.72rem;}
  .c-menu-count {grid-template-columns: 1fr;}
  .o-toolbar-region {flex-direction: column; gap:0.81rem; text-align: center;}
  .screen-info {align-items: flex-start; flex-direction: column; gap:1.15rem;}
}

@media (max-width: 460px) {
  .chip-expand {flex: 1 1 100%;}html .c-reply-spacer{right:1.04rem; bottom:1.05rem;}
}

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

@media print {
  .banner-thumb-flat, .fill-tabs, .backdrop-screen, .area-widget, .c-entry-body,
  .ui-pagination, .bar-grid, .c-reply-spacer, .c-chip-wrapper, .c-select-primary, .container-slider {display: none !important;}
  body {background:#main-hero; background-blend-mode:normal; text-decoration-skip-ink:auto;}
}
html .zone-view{border:0; max-width:none; box-shadow:none;}