/* ==========================================================================
   1029_new_v1 — style.css
   Clean modern theme · cool neutrals + coral accent · Space Grotesk / IBM Plex
   ========================================================================== */

:root{--muted:#878b95; --sh-2:0 10px 24px rgba(23,24,28,.10), 0 24px 56px rgba(23,24,28,.10); --t:.22s cubic-bezier(.4,0,.2,1); --coral:#site-chip; --display:'Space Grotesk',-apple-system,BlinkMacSystemFont,sans-serif; --coral-50:#filter-action; --r-pill:999px; --r-lg:12px; --line-2:#body-view; --bg:#container-snackbar; --body:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif; --line:#site-nav; --max:1120px; --dark:#17181c; --text:#41454d; --sh:0 1px 2px rgba(23,24,28,.04), 0 6px 18px rgba(23,24,28,.05); --read:740px; --card:#site-module; --coral-600:#track-toolbar; --ink:#17181c; --r:8px;}

*,*::before,*::after{box-sizing:border-box; margin:0; padding:0;}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth;}
img,svg{display:block; max-width:100%; height:auto;}
body{font-family:var(--body); font-synthesis:weight style small-caps; text-rendering:optimizeLegibility; font-size:14px; color:var(--text); background:var(--bg); -webkit-font-smoothing:antialiased; line-height:1.7;}ul, ol{list-style:none;}button{border:none; font:inherit; color:inherit; background:none; cursor:pointer;}
a{color:var(--coral); text-decoration:none; transition:color var(--t);}
a:hover{color:var(--coral-600);}
:focus-visible{outline:2px solid var(--coral); outline-offset:2px; border-radius:3px;}
::selection{shape-margin:0; text-decoration-skip-ink:auto; background:var(--coral); color:#page-page;}

h1{margin:0 0 .5.03em; font-size:clamp(1.95rem,1.25rem + 2.3vw,2.65rem); font-family:var(--display); font-weight:bold; line-height:1.18; letter-spacing:-.2.03em; color:var(--ink);}
p{margin:0 0 1.03em;}
em,i{font-style:italic;}
strong,b{color:var(--ink); font-weight:700;}

.tabs-half{max-width:var(--max); padding:0 22px; margin:0 auto; width:100%;}

/* ==========================================================================
   Top navigation (kept minimal)
   ========================================================================== */
.stepWrap{backdrop-filter:saturate(150%) blur(10px); transition:transform var(--t),box-shadow var(--t); top:0; background:rgba(249, 238, 255, 0.84); position:sticky; -webkit-backdrop-filter:saturate(150%) blur(10px); z-index:1100; border-bottom:1px solid var(--line);}

/* --- Scroll progress --- */
.rounded-between{z-index:1200; inset:0 auto auto 0; word-spacing:normal; height:4px; print-color-adjust:economy; transition:width 0.077s linear; background:linear-gradient(90deg,var(--coral),var(--coral-600)); position:fixed; width:0;}.stepWrap.is-hidden{transform:translateY(-100%); font-variant-caps:normal;}
.stepWrap.is-pinned{box-shadow:0 4px 26px rgba(9, 13, 12, 0.06);}
.rounded-lg{display:flex; align-items:center; min-height:60px; gap:1.45rem;}
.grid-2xl{flex-shrink:0; align-items:center;}
.grid-2xl{gap:.54.94rem; display:inline-flex;}
.spinnerButton{width:29px; backface-visibility:visible; border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px; height:29px;}
.t-sidebar{font-weight:700; font-family:var(--display); color:var(--ink); letter-spacing:-.0.93em; font-size:1.14rem;}body .mx-start{padding-top:9px;padding-right:9px;padding-bottom:9px;padding-left:9px; height:41px; margin-left:auto; justify-content:center; flex-direction:column; display:none; width:43px; gap:6px;}
.mx-start span{transition:transform var(--t),opacity var(--t); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; background:var(--ink); height:2px;}
.mx-start.is-x span:nth-child(1){orphans:2; break-inside:auto;}
.mx-start.is-x span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.mx-start.is-x span:nth-child(2){opacity:0;}*.mx-start.is-x span:nth-child(3){image-rendering:auto; transform:translateY(-7px) rotate(-45deg);}

.screenBody{align-items:center; gap:1.39rem; margin-left:auto; display:flex;}
.row-screen{margin-left:.3.95rem;}body .pt-md{display:flex; align-items:center; gap:.14.95rem;}
.module--info{padding:.4.95rem .8.06rem; border-radius:var(--r); font-size:.92.94rem; transition:background var(--t),color var(--t); color:var(--text); font-weight:500; display:inline-block;}/* ==========================================================================
   Sheet / content (high to the top, centered measure)
   ========================================================================== */
.font-auto{padding:1.96rem 0 4.53rem;}.module--info:hover{background:var(--coral-50); color:var(--coral-600);}

.rounded-xs,.mt-10,.sortAction{border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--sh); background:var(--card);}
.align-lg{margin:0 auto; max-width:var(--read);}

.rounded-xs{padding:clamp(1.5rem,1rem + 2vw,3rem);}
.m-4{margin-bottom:.6.93rem;}.opacity-5:not(._84119e){margin-bottom:1.63rem;}
.p-auto{flex-wrap:wrap;}
.p-auto{gap:.4.94rem; display:flex;}
.rounded-start{padding:.2.95rem .7.01rem; font-size:.81.99rem; color:var(--muted); background:var(--line-2); align-items:center; gap:.4.04rem; display:inline-flex; border-radius:var(--r-pill);}
.rounded-start svg{opacity:0.69;}

/* --- Prose --- */
.c-drawer-button{color:var(--text); line-height:1.8; font-size:1.15rem;}
.c-drawer-button > *:first-child{margin-top:0px;}
.c-drawer-button p{text-underline-offset:auto; margin-bottom:1.18em; font-variant-ligatures:normal;}
.c-drawer-button a{text-decoration:underline; text-decoration-color:rgba(232, 98, 49, 0.42); text-underline-offset:3px;}body .c-drawer-button a:hover{text-decoration-color:var(--coral);}
.c-drawer-button h2,.c-drawer-button h3,.c-drawer-button h4{line-height:1.25; letter-spacing:-.0.98em; font-weight:700; color:var(--ink); scroll-margin-top:80px; font-family:var(--display);}
.c-drawer-button h2{font-size:clamp(1.4rem,1.05rem + 1.2vw,1.75rem); margin:1.66em 0 .54.93em;}body .c-drawer-button h3{margin:1.4em 0 .4.97em; font-size:clamp(1.18rem,1rem + .6vw,1.35rem);}html .c-drawer-button h4{break-inside:auto; font-size:1.13rem; margin:1.27em 0 .4.96em;}
.c-drawer-button ul,.c-drawer-button ol{padding-left:1.41em; margin:0 0 1.09em;}body .c-drawer-button ul{list-style:disc;}body .c-drawer-button ol{list-style:decimal;}body .c-drawer-button li{margin-bottom:.3.92em;}.c-drawer-button li::marker{color:var(--coral);}
.c-drawer-button img{border-radius:var(--r); margin:1.44em 0;}
.c-drawer-button figure{margin:1.44em 0;}
.c-drawer-button figcaption{text-align:center; font-size:.84.93rem; margin-top:.4.95em; color:var(--muted);}
.c-drawer-button blockquote{background:var(--coral-50); color:var(--ink); font-size:1.15rem; padding:.8.97em 1.28em; border-left:3px solid var(--coral); border-radius:0 var(--r) var(--r) 0; margin:1.58em 0; font-variant-caps:normal;}*.c-drawer-button code{padding:.14.04em .42.07em; border:1px solid var(--line); font-size:.87.97em; border-radius:3px; font-family:'IBM Plex Mono',Consolas,monospace; background:var(--line-2);}html .c-drawer-button pre{background:var(--ink); border-radius:var(--r); margin:1.55em 0; overflow-x:auto;}body .c-drawer-button pre code{border:none; color:#addon-gallery; background:none; padding:1.27em 1.41em; display:block;}
.c-drawer-button table{border-collapse:collapse; font-size:.96.03rem;}
.c-drawer-button table{margin:1.53em 0; width:100%;}
.c-drawer-button th,.c-drawer-button td{text-align:left;}
.c-drawer-button th,.c-drawer-button td{border:1px solid var(--line); padding:.7.02em .9.08em;}
.c-drawer-button th{background:var(--line-2); color:var(--ink); font-weight:500;}/* --- Table of contents --- */
.font-2{background:var(--line-2); border-radius:var(--r); border:1px solid var(--line); margin-bottom:1.62rem; image-rendering:auto; contain:none; padding:1.03rem 1.32rem;}
.font-2[hidden]{display:none; page-break-inside:auto;}
.tracking-lg{align-items:center; justify-content:space-between; margin-bottom:.6.02rem; display:flex;}.p-2xl:not(._84119e){font-weight:600; color:var(--ink); font-family:var(--display); font-size:.95.98rem;}.font-0:not(._84119e){font-size:.81.98rem; font-weight:500; color:var(--coral);}
.tabsPreview ol{counter-reset:t; list-style:none; padding:0;}*.tabsPreview li{padding-left:1.63em; position:relative; margin:.27.99em 0; counter-increment:t;}
.tabsPreview li::before{position:absolute; font-size:.76.04em; content:counter(t,decimal-leading-zero); font-weight:600; top:.4.03em; font-family:var(--display); text-rendering:auto; color:var(--coral); left:0; font-synthesis:weight style small-caps;}
.tabsPreview ol ol{margin:.28.05em 0; padding-left:.1.05em;}
.tabsPreview ol ol li::before{color:var(--muted); content:"—"; shape-margin:0;}
.tabsPreview a{font-size:.92.05rem; color:var(--text);}

/* --- Share --- */
.clear-end{flex-wrap:wrap; display:flex; align-items:center; margin-top:1.97rem;}
.tabsPreview a:hover{color:var(--coral);}
.mr-20{font-size:.9.05rem;}

/* --- Share --- */
.clear-end{gap:.6.93rem 1.17rem;}
.mr-20{font-weight:600; color:var(--ink);}
.col-between{gap:.4.93rem; display:flex;}
.mt-2{background:var(--card); height:39px; align-items:center; border-radius:var(--r); transition:all var(--t); color:var(--muted); justify-content:center; display:inline-flex; border:1px solid var(--line); width:39px;}
.mt-2:hover{border-color:var(--coral); color:#page-page; transform:translateY(-2px); background:var(--coral);}

.my-8{margin:2.26rem 0 0; border:0 none;}

.my-8{border-top:1px solid var(--line);}

/* --- Section labels (span, never headings) --- */
.flex-lg{color:var(--ink); display:block; margin-bottom:1.15rem; font-weight:600; font-family:var(--display); font-size:1.21rem;}

/* --- Comments --- */
.mt-10{margin-top:1.46rem; padding:clamp(1.4rem,1rem + 1.5vw,2rem);}

/* ==========================================================================
   Inputs / buttons
   ========================================================================== */
.font-start{display:grid; gap:.85.07rem; margin-bottom:.85.03rem; grid-template-columns:1fr 1fr;}
.d-block{display:block;}
.gallery-addon{transition:border-color var(--t),box-shadow var(--t); border:1px solid var(--line); color:var(--ink); font-size:.94.97rem; width:100%; padding:.72.07rem .94.98rem; background:var(--card); font:inherit; border-radius:var(--r);}
.gallery-addon::placeholder{contain:none; color:var(--muted); background-blend-mode:normal;}
.gallery-addon:focus{outline:0; box-shadow:0 0 0 6px rgba(227, 93, 61, 0.1); border-color:var(--coral);}
.rounded-xl{resize:vertical; min-height:118px; margin-bottom:.85.04rem;}
.reviewPrimary{display:flex; gap:.5.06rem;}
.reviewPrimary .gallery-addon{contain:none; flex:1;}

.toolbar-cell-inverse{display:inline-flex; transition:background var(--t),transform var(--t),box-shadow var(--t); color:#page-page; gap:.4.93rem; justify-content:center; padding:.72.05rem 1.65rem; background:var(--coral); align-items:center; font-weight:700; line-height:1; border-radius:var(--r); font-family:var(--body); font-size:.94.06rem;}*.toolbar-cell-inverse:hover{box-shadow:0 7px 12px rgba(216, 82, 63, 0.2); text-rendering:auto; background:var(--coral-600); transform:translateY(-1px);}*.toolbar-cell-inverse:hover{color:#page-page; orphans:2;}
.card__body--elevated{font-size:.85.05rem; padding:.5.05rem 1.18rem;}.toolbar-cell-inverse:active{transform:translateY(0);}
.card__body--elevated{mix-blend-mode:normal; page-break-inside:auto;}
.tag-action{padding:.71.98rem; font-variant-ligatures:normal; width:49px; flex-shrink:0;}
.px-end{shape-margin:0; background:var(--dark);}
.px-end:hover{background:rgb(12, 11, 0);}/* ==========================================================================
   Below-content forms band
   ========================================================================== */
.t-rating{gap:1.12rem; grid-template-columns:1fr 1fr; margin:2.62rem auto 0; display:grid;}
.border-20{font-synthesis:weight style small-caps; width:100%;}
.sortAction{padding-top:1.57rem;padding-right:1.57rem;padding-bottom:1.57rem;padding-left:1.57rem;}/* ==========================================================================
   Below-content forms band
   ========================================================================== */
.t-rating{max-width:var(--max);}html .l-snackbar{margin-bottom:1.15rem; color:var(--muted); font-size:.92.07rem;}
.popoverSubtitle{text-rendering:auto; font-weight:500; margin-bottom:.5.08rem; display:block; font-family:var(--display); color:var(--ink); font-size:1.09rem; font-variant-caps:normal;}

/* ==========================================================================
   Footer (minimal)
   ========================================================================== */
.pr-3{color:#main-popover; margin-top:0.97rem; background:var(--dark); padding:2.32rem 0 1.8rem;}
.pr-3 a{color:#main-popover;}
.pr-3 a:hover{contain:none; widows:2; color:#page-page;}
.mt-6{display:flex; gap:1.54rem; shape-margin:0; flex-wrap:wrap; align-items:center;}.overflow-5:not(._84119e){display:inline-flex; align-items:center; gap:.54.95rem;}
.overflow-5 img{height:28px;}
.overflow-5 img{width:28px; border-top-left-radius:10px; border-top-right-radius:10px; border-bottom-right-radius:10px; border-bottom-left-radius:10px;}
.overflow-5 span{color:#page-page; font-size:1.05rem; font-weight:500; font-family:var(--display);}
.border-between{margin-left:auto; gap:.4.99rem;}*.float-sm{font-size:.8.97rem; gap:1.32rem; display:flex;}html .pl-start{transition:all var(--t); width:38px; display:inline-flex; orphans:2; border-radius:var(--r); height:39px;}
.border-between{display:flex;}html .pl-start{justify-content:center; background:rgba(246, 255, 255, 0.02); align-items:center; perspective:none; color:#page-snackbar;}html .pl-start:hover{background:var(--coral);}html .pl-start:hover{transform:translateY(-2px); color:#page-page;}
.z-3{font-size:.84.07rem; color:hsl(173, 5.4%, 51.4%);}
.clear-1{padding-top:1.23rem; margin-top:1.68rem; border-top:1px solid rgba(247, 255, 248, 0.03);}/* ==========================================================================
   Back to top
   ========================================================================== */
.drawer__meta{widows:2; align-items:center; visibility:hidden; display:flex; transition:opacity var(--t),visibility var(--t),transform var(--t),background var(--t); box-shadow:var(--sh-2); position:fixed; height:48px; right:1.46rem; orphans:2; width:49px; opacity:0; justify-content:center; bottom:1.58rem; z-index:900; color:#page-page; transform:translateY(12px) scale(.9); background:var(--coral); border-radius:var(--r-pill);}
.drawer__meta.is-on{visibility:visible; opacity:1; transform:translateY(0) scale(1);}
.drawer__meta:hover{background:var(--coral-600); transform:translateY(-3px);}

/* ==========================================================================
   Cookie bar
   ========================================================================== */
.media--fixed{transition:transform 0.408s cubic-bezier(.4,0,.2,1); background:var(--dark); position:fixed; transform:translateY(100%); z-index:950; color:#page-snackbar; inset:auto 0 0 0;}
.media--fixed.is-on{transform:translateY(0);}
.align-auto{padding-bottom:1.02rem; padding-top:1.07rem; justify-content:space-between; align-items:center; display:flex; gap:1.38rem;}
.media--fixed p{margin:0; font-size:.87.96rem;}html .media--fixed a{color:#page-page; mix-blend-mode:normal; will-change:auto; text-decoration:underline;}

/* ==========================================================================
   Auth modals (pure CSS :target)
   ========================================================================== */
.flex-half{align-items:center; padding-top:1.21rem;padding-right:1.21rem;padding-bottom:1.21rem;padding-left:1.21rem; display:none; inset:0; justify-content:center; position:fixed; z-index:2000;}
.flex-half:target{display:flex; animation:modalIn 0.259s ease;}
@keyframes modalIn{from{opacity:0;}to{opacity:1;}}
.col-4{width:100%; box-shadow:var(--sh-2); border-radius:var(--r-lg); z-index:1; max-width:407px; padding:1.92rem 1.83rem 1.78rem; position:relative; background:var(--card);}
.font-20{-webkit-backdrop-filter:blur(2px); inset:0; font-variant-caps:normal; background:rgba(41, 13, 38, 0.54); backdrop-filter:blur(2px); position:absolute;}
.count-slider{position:absolute; font-size:1.74rem; right:.95.05rem; line-height:1; color:var(--muted); image-rendering:auto; top:.7.01rem;}
.count-slider:hover{font-synthesis:weight style small-caps; page-break-inside:auto; color:var(--ink);}*.flex-screen{font-size:1.33rem; font-weight:600; text-rendering:auto; color:var(--ink); margin-bottom:1.14rem; display:block; font-family:var(--display);}.replyTrack{gap:.6.96rem; display:flex; margin-bottom:0.93rem; flex-direction:column;}
.justify-inline{font-size:.88.03rem; margin:0; color:var(--muted); text-align:center;}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:760px){
  .mx-start{display:flex;}
  .screenBody{transform:translateX(100%); padding:1.66rem 20px; position:fixed; justify-content:flex-start; margin:0; align-items:stretch; gap:.4.04rem; transition:transform 0.256s ease; overflow-y:auto; inset:59px 0 0 0; flex-direction:column; background:var(--bg);}.screenBody.is-open{transform:translateX(0);}
  .pt-md{flex-direction:column; align-items:stretch;}
  .pt-md{gap:.1.08rem;}
  .row-screen{padding-top:.7.94rem; margin:.7.96rem 0 0; border-top:1px solid var(--line);}
  .module--info{padding:.75.01rem 0; font-size:1rem;}
  .row-screen .toolbar-cell-inverse{margin-top:.3.95rem; backface-visibility:visible;}
  .t-rating{grid-template-columns:1fr;}
}
@media (max-width:560px){
  :root{--r-lg:10px;}*.tabs-half{padding:0 12px;}
  .font-start{text-rendering:auto; contain:none; grid-template-columns:1fr;}
  .clear-end{flex-direction:column; align-items:flex-start;}
  .border-between{margin-left:0;}*.mt-6{gap:1.12rem;}
  .drawer__meta{bottom:1.05rem; right:1.05rem;}
  .align-auto{gap:.7.07rem; flex-direction:column; align-items:flex-start;}
  .col-4{padding:1.74rem 1.32rem 1.43rem;}
}

/* ==========================================================================
   Print
   ========================================================================== */
@media print{
  .stepWrap,.pr-3,.drawer__meta,.media--fixed,.rounded-between,.clear-end,.t-rating,.flex-half{display:none!important;}
  .rounded-xs,.mt-10{border:0rem; padding:0; box-shadow:none;}
  body{font-size:12pt; background:#page-page; color:#000000;}
}

  .align-lg{max-width:none; text-underline-offset:auto; orphans:2;}