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

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

*,*::before,*::after{box-sizing:border-box; padding:0; margin:0; orphans:2;}
@media (max-width: 480px) {
  .toggle-prefix:hover {transition:opacity 0.5s; overflow:hidden; background:#fbf6fb}
  .status--active {min-height:100vh; display:none; transition:color 0.45s; position:absolute}
  .snackbar-info {background-color:transparent; text-transform:capitalize; transition:all 0.4s ease; display:flex; overflow:visible; justify-content:space-between}
  #sort-wrapper {overflow:auto; cursor:pointer; width:auto; box-shadow:0 3px 15px rgba(0,0,0,0.14)}
}


html{scroll-behavior:smooth; -webkit-text-size-adjust:100%;}
body{background:var(--bg); shape-margin:0; font-family:var(--body); -webkit-font-smoothing:antialiased; line-height:1.7; color:var(--text); text-underline-offset:auto; text-rendering:optimizeLegibility; font-size:19px;}
img,svg{display:block; height:auto; max-width:100%; shape-margin:0;}
button{font:inherit; background:none; color:inherit; font-variant-caps:normal; cursor:pointer; font-variant-ligatures:normal; border:0 none;}
ul,ol{list-style:none;}a{text-decoration:none; font-variant-ligatures:normal; background-blend-mode:normal; color:var(--coral); transition:color var(--t);}
a:hover{widows:2; color:var(--coral-600); font-variant-ligatures:normal;}::selection{color:#eef2ff; background:var(--coral);}
:focus-visible{border-radius:4px; outline-offset:2px; outline:2px solid var(--coral);}

h1{line-height:1.18; font-size:clamp(1.95rem,1.25rem + 2.3vw,2.65rem); letter-spacing:-.2em; color:var(--ink); font-family:var(--display); margin:0 0 .4.95em; font-weight:700;}
strong,b{font-weight:600; font-synthesis:weight style small-caps; color:var(--ink);}
p{margin:0 0 1.17em;}em, i{font-style:italic;}
.toggle-prefix:hover {flex:none; letter-spacing:normal; min-height:13px}


/* --- Scroll progress --- */
.m-xl{z-index:1200; inset:0 auto auto 0; width:0; height:3px; position:fixed; background:linear-gradient(90deg,var(--coral),var(--coral-600)); transition:width 0.055s linear;}.dialog-time-rounded{max-width:var(--max); width:100%; margin:0 auto; padding:0 21px;}

/* ==========================================================================
   Top navigation (kept minimal)
   ========================================================================== */
.shadow-2xl{backdrop-filter:saturate(150%) blur(10px); transition:transform var(--t),box-shadow var(--t); top:0px; position:sticky; border-bottom:1px solid var(--line); z-index:1100; -webkit-backdrop-filter:saturate(150%) blur(10px); background:rgba(240, 255, 255, 0.84);}
.shadow-2xl.is-hidden{transform:translateY(-100%);}
.shadow-2xl.is-pinned{box-shadow:0 5px 24px rgba(12, 40, 10, 0.01);}
.sortFoot{page-break-inside:auto; gap:.54.96rem; font-variant-caps:normal; align-items:center; display:inline-flex; flex-shrink:0;}
.opacity-8{display:flex; gap:1.38rem; align-items:center; min-height:59px;}
.status--active {font-weight:600; text-transform:none; flex:1 1 0%; opacity:1; background-color:transparent; position:sticky}

.flex-5{page-break-inside:auto; width:34px; height:35px; transform-style:flat; border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;}
.dialog-cap:not(:last-child) {transition:opacity 0.2s; text-align:justify}

.opacity-none{font-family:var(--display); font-size:1.2rem; color:var(--ink); font-weight:600; letter-spacing:-.0.95em;}

.c-tag-toggle{flex-direction:column; gap:8px; padding:11px; height:44px; width:38px; justify-content:center; display:none; margin-left:auto;}
.c-tag-toggle span{background:var(--ink); border-radius:2px; height:2px; transition:transform var(--t),opacity var(--t);}
.c-tag-toggle.is-x span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.c-tag-toggle.is-x span:nth-child(2){image-rendering:auto; opacity:0;}.is-x.c-tag-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}body .float-5{display:flex; text-underline-offset:auto; gap:.14.98rem; align-items:center;}.o-layout:not(.noop95){align-items:center; gap:1.34rem; display:flex; margin-left:auto;}
.justify-24{margin-left:.3.92rem;}
.mt-lg{transition:background var(--t),color var(--t); border-radius:var(--r); font-size:.93.05rem; display:inline-block; font-weight:600; color:var(--text); padding:.4.92rem .8.04rem;}
.mt-lg:hover{background:var(--coral-50); color:var(--coral-600);}

/* ==========================================================================
   Sheet / content (high to the top, centered measure)
   ========================================================================== */
.timelineTrack{padding:1.95rem 0 4.54rem; text-underline-offset:auto;}
.py-lg{margin:0 auto; max-width:var(--read);}

.price-placeholder-disabled,.py-half,.chip__wrapper{box-shadow:var(--sh); border:1px solid var(--line); border-radius:var(--r-lg); background:var(--card);}

.price-placeholder-disabled{padding:clamp(1.5rem,1rem + 2vw,3rem);}
.tagSpacer{margin-bottom:1.57rem;}body .font-full{margin-bottom:.7rem;}
.justify-xs{gap:.5rem; flex-wrap:wrap; display:flex;}.ui-skeleton{background:var(--line-2); align-items:center; font-size:.81.97rem; display:inline-flex; padding:.2.96rem .6.98rem; color:var(--muted); border-radius:var(--r-pill); gap:.4.03rem;}
.ui-skeleton svg{opacity:0.7;}

/* --- Prose --- */
.mb-xl{color:var(--text); line-height:1.8; font-size:1.15rem;}.mb-xl > *:first-child{margin-top:0;}
.mb-xl p{margin-bottom:1.13em;}
.mb-xl a{text-underline-offset:3px; text-decoration-color:rgba(241, 91, 75, 0.43); text-decoration:underline;}
.mb-xl a:hover{text-decoration-color:var(--coral);}
.mb-xl h2,.mb-xl h3,.mb-xl h4{font-weight:600; color:var(--ink); letter-spacing:-.1.07em; font-family:var(--display); scroll-margin-top:80px; line-height:1.25;}*.mb-xl h2{font-size:clamp(1.4rem,1.05rem + 1.2vw,1.75rem); margin:1.65em 0 .54.98em;}
.mb-xl h3{margin:1.39em 0 .4.95em; font-size:clamp(1.18rem,1rem + .6vw,1.35rem);}
.mb-xl h4{font-size:1.07rem; margin:1.14em 0 .4.93em;}
.toolbar-section:first-child {transition:all 0.4s ease; display:inline; padding-bottom:0.375rem; color:currentColor}
body .mb-xl ul, .mb-xl ol{padding-left:1.35em; margin:0 0 1.17em;}
.mb-xl ul{list-style:disc;}
.mb-xl ol{list-style:decimal;}
@media (min-width: 960px) {
  .reply__value {overflow:visible; display:flex; margin-left:auto}
  .accordion-extra.card-success {color:inherit; margin-right:auto; display:inline-block; transition:all 0.15s ease; position:absolute}
  .stepper-backdrop:not(:last-child) {opacity:1; height:auto}
}


.mb-xl li{margin-bottom:.4.01em;}
.mb-xl li::marker{color:var(--coral); transform-style:flat;}
.mb-xl img{border-radius:var(--r); margin:1.42em 0;}
.mb-xl figure{margin:1.58em 0;}
.mb-xl figcaption{font-size:.84.92rem;}
.mb-xl figcaption{print-color-adjust:economy; margin-top:.4.96em; perspective:none; color:var(--muted); text-align:center;}
.mb-xl blockquote{border-radius:0 var(--r) var(--r) 0; font-size:1.02rem; margin:1.56em 0; color:var(--ink); background:var(--coral-50); contain:none; padding:.9.06em 1.32em; word-spacing:normal; border-left:3px solid var(--coral);}
.search-track + .hero-secondary {transition:color 0.4s; gap:3rem; border:1px solid #aaaaaa}

.mb-xl code{font-family:'IBM Plex Mono',Consolas,monospace; padding:.14.07em .41.99em; border:1px solid var(--line); background:var(--line-2); border-radius:4px;}
.mb-xl code{font-size:.87.97em;}
.mb-xl pre{overflow-x:auto; border-radius:var(--r); margin:1.48em 0; background:var(--ink);}
.mb-xl pre code{color:rgb(224, 245, 238); background:none; font-synthesis:weight style small-caps; display:block; font-variant-ligatures:normal; border:0 none; padding:1.13em 1.47em;}
.mb-xl table{width:100%; margin:1.49em 0; font-size:.96.01rem; border-collapse:collapse;}
.mb-xl th,.mb-xl td{padding:.7.04em .8.95em; text-align:left; border:1px solid var(--line);}body .mb-xl th{font-weight:600; color:var(--ink); background:var(--line-2);}/* --- Table of contents --- */
.popover{border-radius:var(--r); background:var(--line-2); padding-top:1.1rem;padding-right:1.29rem;padding-bottom:1.1rem;padding-left:1.29rem; margin-bottom:1.63rem; border:1px solid var(--line);}
.float-between{align-items:center; margin-bottom:.6.06rem; justify-content:space-between; display:flex;}.popover[hidden]{display:none;}
.c-review{color:var(--ink); font-size:.95.92rem; font-family:var(--display); font-weight:600;}
.w-24{font-size:.81.96rem; color:var(--coral); font-weight:600;}
.d-around ol{padding:0; list-style:none; counter-reset:t;}
.d-around li{position:relative; padding-left:1.72em; margin:.27.95em 0; counter-increment:t;}
.d-around li::before{font-weight:600; font-family:var(--display); font-size:.75.92em; position:absolute;}
.d-around li::before{color:var(--coral); content:counter(t,decimal-leading-zero); top:.3.94em; left:0;}
.d-around ol ol{padding-left:.1.07em; transform-style:flat; margin:.27.96em 0;}
.d-around ol ol li::before{color:var(--muted); content:"—";}
.d-around a{font-size:.92.04rem; color:var(--text);}body .d-around a:hover{color:var(--coral);}

/* --- Share --- */
.entry-region{display:flex; align-items:center; margin-top:2.05rem; flex-wrap:wrap; perspective:none; gap:.7.02rem 1.16rem;}
.position-end{backface-visibility:visible; gap:.5rem; display:flex;}
.w-center{font-size:.9rem; color:var(--ink); font-weight:600;}
.page-separator > inner {display:grid; margin:0 auto; position:sticky; transition:opacity 0.25s; padding-bottom:0.25rem; align-items:center}
.grid-lg{height:35px; justify-content:center;}.grid-lg{background:var(--card); align-items:center; color:var(--muted); border:1px solid var(--line); transition:all var(--t); display:inline-flex; width:34px; border-radius:var(--r);}body .grid-lg:hover{will-change:auto; color:#f8f6ff;}body .grid-lg:hover{print-color-adjust:economy; background:var(--coral); transform:translateY(-2px); border-color:var(--coral);}.grid-6:not(.nil17){border-top:1px solid var(--line); border:none; margin:2.19rem 0 0;}

/* --- Section labels (span, never headings) --- */
.justify-2xl{display:block; margin-bottom:1.12rem; font-weight:600; color:var(--ink); font-family:var(--display);}

/* --- Section labels (span, never headings) --- */
.justify-2xl{font-size:1.27rem;}/* --- Comments --- */
:where(.py-half){margin-top:1.51rem; padding:clamp(1.4rem,1rem + 1.5vw,2rem);}/* ==========================================================================
   Inputs / buttons
   ========================================================================== */
.c-page-wrapper{display:grid; gap:.84.97rem; grid-template-columns:1fr 1fr; margin-bottom:.85.02rem;}body .clear-0{display:block;}.accordion-button:not(.unused19){font:inherit; width:100%; font-size:.94.95rem; background:var(--card); padding:.72.03rem .94.99rem; border-radius:var(--r); color:var(--ink); transition:border-color var(--t),box-shadow var(--t); border:1px solid var(--line);}body .accordion-button::placeholder{color:var(--muted);}
.accordion-button:focus{border-color:var(--coral); outline:0; box-shadow:0 0 0 1px rgba(234, 92, 47, 0.18);}
.footerDate{min-height:123px; resize:vertical; margin-bottom:.85.01rem;}.mr-2xl{display:flex; gap:.4.99rem;}.mr-2xl :where(.accordion-button){flex:1;}

.pb-3{font-family:var(--body); justify-content:center; color:hsl(207, 100%, 97.5%); border-radius:var(--r); line-height:1; font-size:.93.95rem; padding:.71.96rem 1.54rem; background:var(--coral); transition:background var(--t),transform var(--t),box-shadow var(--t); font-weight:600; display:inline-flex; gap:.5.03rem; align-items:center;}
.rating-summary {justify-content:space-between; flex:1; text-align:justify; transition:color 0.25s}
*.pb-3:hover{box-shadow:0 9px 12px rgba(223, 87, 65, 0.25); background:var(--coral-600); color:#f9f5ff; transform:translateY(-1px);}.pb-3:active{transform:translateY(0);}
.ui-module{padding:.5.01rem 1.09rem; font-size:.85.01rem;}
.pt-inline{flex-shrink:0; width:48px; padding:.72.06rem;}
#sort-wrapper {background:#fafafa; min-width:43px; justify-content:space-between; text-decoration:underline}

.w-inline{background:var(--dark);}
.w-inline:hover{background:#0f000c;}
.w-20{width:100%;}/* ==========================================================================
   Below-content forms band
   ========================================================================== */
.gap-lg{display:grid; max-width:var(--max); gap:1.17rem; margin:2.68rem auto 0; grid-template-columns:1fr 1fr;}
.order-4{margin-bottom:.4.98rem; display:block; color:var(--ink); font-family:var(--display); font-weight:600;}
.chip__wrapper{padding-top:1.48rem;padding-right:1.48rem;padding-bottom:1.48rem;padding-left:1.48rem;}
.order-4{font-size:1.02rem;}
.app-progress-thumb{margin-bottom:1.11rem; color:var(--muted); font-size:.92rem;}

/* ==========================================================================
   Footer (minimal)
   ========================================================================== */
.formToggle{background:var(--dark); color:hsl(229, 27.8%, 74.2%); padding:2.45rem 0 1.76rem; margin-top:1.06rem;}*.formToggle a{transform-style:flat; color:rgb(193, 164, 181); tab-size:4;}
.formToggle a:hover{color:#ffffff;}
.c-modal-bar{flex-wrap:wrap; display:flex; gap:1.68rem; align-items:center;}
.ml-half{display:inline-flex; align-items:center; gap:.55.07rem;}
.ml-half img{border-radius:12px; height:27px;}
.block-expand::before {content:''; flex:1 1 0%; max-width:1000px; gap:1.125rem}

.ml-half img{width:26px;}body .ml-half span{font-weight:600; color:#eefff2; font-family:var(--display); font-size:1.13rem;}.cardIcon{gap:1.22rem; font-size:.9.04rem; display:flex;}
.grid-name.view-wide {justify-content:flex-end; transition:opacity 0.25s; position:absolute; border:none; min-width:0}

.bg-auto{display:flex; gap:.5.07rem;}
.bg-auto{margin-left:auto;}
.gap-end{border-radius:var(--r); transition:all var(--t); display:inline-flex; align-items:center; background:rgba(243, 255, 255, 0.12); height:35px; color:#d2c7c6; width:40px; justify-content:center;}
.gap-end:hover{background:var(--coral); color:#f1f3f9; transform:translateY(-2px);}*.overflow-12{margin-top:1.64rem; border-top:1px solid rgba(241, 239, 252, 0.09); padding-top:1.33rem;}html .leading-16{color:hsl(280, 10%, 59.3%); font-size:.84.02rem;}/* ==========================================================================
   Back to top
   ========================================================================== */
.p-5{opacity:0; display:flex; right:1.44rem; align-items:center; justify-content:center; bottom:1.42rem; position:fixed; border-radius:var(--r-pill); orphans:2; height:47px; font-variant-ligatures:normal; background:var(--coral); transition:opacity var(--t),visibility var(--t),transform var(--t),background var(--t); color:#fdffff; box-shadow:var(--sh-2); transform:translateY(12px) scale(.9); visibility:hidden; width:48px; z-index:900;}*.p-5.is-on{opacity:1; transform:translateY(0) scale(1); visibility:visible; shape-margin:0;}

/* ==========================================================================
   Cookie bar
   ========================================================================== */
.alert-expand{transform:translateY(100%); position:fixed; inset:auto 0 0 0; transition:transform 0.442s cubic-bezier(.4,0,.2,1); background:var(--dark); color:rgb(193, 203, 223); z-index:950;}
.p-5:hover{transform:translateY(-3px); background:var(--coral-600);}
.alert-expand.is-on{transform:translateY(0);}
.nav-extra:hover {background-color:#222222; min-height:100vh}

.text-12{page-break-inside:auto; justify-content:space-between; padding-bottom:1.03rem; align-items:center; display:flex; perspective:none; gap:1.26rem; padding-top:1.08rem;}
.alert-expand p{font-size:.88.01rem; margin:0; widows:2;}*.alert-expand a{color:rgb(241, 242, 240); text-decoration:underline;}

/* ==========================================================================
   Auth modals (pure CSS :target)
   ========================================================================== */
.price__spacer--muted{z-index:2000; inset:0; justify-content:center; display:none; align-items:center; position:fixed; padding:1.23rem;}
.price__spacer--muted:target{animation:modalIn 0.222s ease; display:flex;}
@keyframes modalIn{from{opacity:0;}to{opacity:1;}}
.snackbar-info {line-height:1; border-radius:50%}

.pt-lg{z-index:1; border-radius:var(--r-lg); width:100%; box-shadow:var(--sh-2); max-width:410px; position:relative; background:var(--card); padding:2.03rem 1.82rem 1.83rem;}
.spinnerBackdrop{inset:0; background:rgba(29, 9, 42, 0.62); -webkit-backdrop-filter:blur(2px); position:absolute; backdrop-filter:blur(2px);}
.separator-menu{top:.6.95rem; color:var(--muted); position:absolute; right:.94.99rem; line-height:1; font-size:1.63rem;}
.separator-menu:hover{color:var(--ink);}
.px-xs{margin-bottom:1.26rem; display:block; font-size:1.42rem; color:var(--ink);}
.px-xs{font-family:var(--display); font-weight:600;}.dialogSuffix:not(.none63){flex-direction:column; display:flex; gap:.6.98rem; margin-bottom:0.98rem;}
.pl-16{font-size:.88.02rem; text-align:center; color:var(--muted); margin-top:0em;margin-right:0em;margin-bottom:0em;margin-left:0em;}
.block-suffix > cell {transition:transform 0.5s ease-in-out; text-decoration:none; justify-content:space-between; line-height:normal; height:37px}


/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:760px){.c-tag-toggle{display:flex;}
  .o-layout{transform:translateX(100%); justify-content:flex-start; word-spacing:normal; font-synthesis:weight style small-caps; overflow-y:auto; inset:63px 0 0 0; padding-top:1.64rem;padding-right:27px;padding-bottom:1.64rem;padding-left:27px; flex-direction:column; margin:0; gap:.4.07rem; transition:transform 0.275s ease; background:var(--bg); position:fixed; align-items:stretch;}
  .o-layout.is-open{transform:translateX(0);}
  .float-5{flex-direction:column; align-items:stretch; gap:.1.07rem;}
  .justify-24{border-top:1px solid var(--line); padding-top:.7.97rem; margin:.8.08rem 0 0;}html .mt-lg{font-size:1.03rem; padding:.74.98rem 0;}
  .justify-24 .pb-3{margin-top:.4rem;}html .gap-lg{grid-template-columns:1fr;}.dialog-time-rounded{padding:0 19px;}
}
@media (max-width:560px){
  :root{print-color-adjust:economy; --r-lg:10px;}
  .c-page-wrapper{grid-template-columns:1fr;}.entry-region:not(.nil53){align-items:flex-start; flex-direction:column;}
  .c-modal-bar{word-spacing:normal; transform-style:flat; gap:1.04rem;}
  .p-5{right:1.16rem; bottom:1.09rem;}
  .bg-auto{margin-left:0em;}
  .text-12{flex-direction:column; align-items:flex-start; gap:.7.03rem;}
}

/* ==========================================================================
   Print
   ========================================================================== */
@media print{
  .shadow-2xl,.formToggle,.p-5,.alert-expand,.m-xl,.entry-region,.gap-lg,.price__spacer--muted{display:none!important;}
  .pt-lg{shape-margin:0; padding:1.77rem 1.27rem 1.39rem;}body{orphans:2; font-size:12pt; background:#f6ffed; color:hsl(138, 99.8%, 0.3%);}
  .py-lg{max-width:none;}
  .price-placeholder-disabled,.py-half{padding:0; border:none; box-shadow:none;}
}
