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

:root{--sh:0 1px 2px rgba(23,24,28,.04), 0 6px 18px rgba(23,24,28,.05); --r-lg:12px; --sh-2:0 10px 24px rgba(23,24,28,.10), 0 24px 56px rgba(23,24,28,.10); --r-pill:999px; --bg:#f4f5f7; --ink:#17181c; --card:#ffffff; --coral-50:#fdeee9; --display:'Space Grotesk',-apple-system,BlinkMacSystemFont,sans-serif; --line:#e6e8ee; --coral-600:#cf4a2c; --line-2:#eef0f4; --t:.22s cubic-bezier(.4,0,.2,1); --coral:#e85d3d; --r:8px; --max:1120px; --muted:#878b95; --read:740px; --text:#41454d; --body:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif; --dark:#17181c;}*, *::before, *::after{margin:0; padding:0; box-sizing:border-box;}html{isolation:auto; scroll-behavior:smooth; will-change:auto; -webkit-text-size-adjust:100%;}
body{text-rendering:optimizeLegibility; background:var(--bg); color:var(--text); font-size:14px; font-family:var(--body); -webkit-font-smoothing:antialiased; line-height:1.7;}img, svg{height:auto; max-width:100%; display:block; perspective:none;}ul, ol{font-variant-caps:normal; page-break-inside:auto; list-style:none;}button{color:inherit; font:inherit; cursor:pointer; background:none; border:none;}
a:hover{color:var(--coral-600);}
a{transition:color var(--t); text-decoration:none; color:var(--coral);}
::selection{color:rgb(255, 236, 255); background:var(--coral);}h1{line-height:1.18; letter-spacing:-.1.99em; font-size:clamp(1.95rem,1.25rem + 2.3vw,2.65rem); color:var(--ink); font-weight:700; font-family:var(--display); margin:0 0 .5.04em;}
:focus-visible{outline-offset:2px; outline:2px solid var(--coral); border-top-left-radius:7px;border-top-right-radius:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px;}
p{margin:0 0 1.1em;}
strong,b{page-break-inside:auto; color:var(--ink); font-weight:600; transform-style:flat;}
em,i{font-style:italic;}

.search--odd{width:100%; margin:0 auto; max-width:var(--max); padding:0 23px;}/* --- Scroll progress --- */
.tag--selected:not(.unused16){background:linear-gradient(90deg,var(--coral),var(--coral-600)); position:fixed; transition:width 0.038s linear; z-index:1200; inset:0 auto auto 0; width:0; height:5px;}

/* ==========================================================================
   Top navigation (kept minimal)
   ========================================================================== */
.tag__region--loading{border-bottom:1px solid var(--line); -webkit-backdrop-filter:saturate(150%) blur(10px); transition:transform var(--t),box-shadow var(--t); top:0; position:sticky; background:rgba(238, 255, 255, 0.81); backdrop-filter:saturate(150%) blur(10px); z-index:1100;}.is-hidden.tag__region--loading{transform:translateY(-100%);}
.tag__region--loading.is-pinned{box-shadow:0 6px 22px rgba(19, 14, 31, 0);}
.hero-rounded{display:flex; min-height:64px; align-items:center; gap:1.32rem;}
.popover__head--loading{flex-shrink:0; display:inline-flex; gap:.54.99rem; align-items:center;}
.skeleton{height:30px; border-top-left-radius:12px;border-top-right-radius:12px;border-bottom-right-radius:12px;border-bottom-left-radius:12px; width:34px;}.popover{color:var(--ink); font-weight:600; font-size:1.1rem; letter-spacing:-.0.95em; font-family:var(--display);}

.position-xl{justify-content:center; padding:11px; flex-direction:column; margin-left:auto; height:40px; gap:4px; width:44px; display:none;}
.position-xl span{transition:transform var(--t),opacity var(--t); height:2px; background:var(--ink); border-radius:2px;}
.position-xl.is-x span:nth-child(1){print-color-adjust:economy; transform-style:flat; transform:translateY(7px) rotate(45deg);}html .position-xl.is-x span:nth-child(2){opacity:0; mix-blend-mode:normal;}
.position-xl.is-x span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}.opacity-5{align-items:center; gap:1.4rem; display:flex; margin-left:auto;}
.stepHolder{gap:.14.97rem; display:flex; align-items:center;}.panel-slot{margin-left:.4rem;}
.progress--horizontal {flex:1; gap:0.625rem; justify-content:space-around; min-height:4px; cursor:default; line-height:1}
*.footer--narrow{font-weight:600; transition:background var(--t),color var(--t); padding:.4.97rem .7.95rem; border-radius:var(--r); font-size:.93.02rem; color:var(--text); display:inline-block;}/* ==========================================================================
   Sheet / content (high to the top, centered measure)
   ========================================================================== */
.row-2{padding:1.95rem 0 4.5rem;}
.footer--narrow:hover{background:var(--coral-50); color:var(--coral-600);}
.alert--rounded{max-width:var(--read); margin:0 auto;}
.modal-input:not(:last-child) {padding-right:48px; gap:14px; overflow:visible; display:block; margin-left:0}
.gallery__region, html .snackbar--vertical, .carousel__prefix--active:not(.null79){border-radius:var(--r-lg); box-shadow:var(--sh); border:1px solid var(--line); background:var(--card);}.gallery__region{padding:clamp(1.5rem,1rem + 2vw,3rem);}
.gallery__region{mix-blend-mode:normal; margin-bottom:1.64rem; image-rendering:auto;}
.form__prefix{flex-wrap:wrap; display:flex; gap:.5.06rem;}
.tag__outer{margin-bottom:.7.04rem;}
.media__detail{background:var(--line-2); display:inline-flex; align-items:center; color:var(--muted); padding:.2.98rem .6.99rem; font-size:.82rem; border-radius:var(--r-pill); gap:.3.98rem;}
.progress-zone .profile-body {text-align:center; position:static}

.media__detail svg{mix-blend-mode:normal; opacity:0.71; contain:none;}

/* --- Prose --- */
.carousel__prefix--active{hyphens:manual; font-variant-ligatures:normal; font-size:1.09rem; color:var(--text); line-height:1.8;}
.carousel__prefix--active > *:first-child{margin-top:0;}.carousel__prefix--active p{margin-bottom:1.18em;}
.carousel__prefix--active a{text-underline-offset:3px; text-decoration-color:rgba(236, 78, 47, 0.43); text-decoration:underline;}
.carousel__prefix--active a:hover{text-decoration-color:var(--coral);}
.carousel__prefix--active h2,.carousel__prefix--active h3,.carousel__prefix--active h4{line-height:1.25; font-family:var(--display); scroll-margin-top:80px; font-weight:600; color:var(--ink); letter-spacing:-.1.01em;}*.carousel__prefix--active h2{perspective:none; font-size:clamp(1.4rem,1.05rem + 1.2vw,1.75rem); margin:1.69em 0 .55.07em; font-variant-ligatures:normal;}
.carousel__prefix--active h3{margin:1.38em 0 .5.03em; font-size:clamp(1.18rem,1rem + .6vw,1.35rem);}
.carousel__prefix--active h4{margin:1.13em 0 .5em; font-size:1.15rem;}
.carousel__prefix--active ul,.carousel__prefix--active ol{margin:0 0 1.23em; padding-left:1.46em;}.carousel__prefix--active ul{list-style:disc;}
.media--outlined {font-size:42px; line-height:normal}

.carousel__prefix--active ol{list-style:decimal;}
.carousel__prefix--active li{margin-bottom:.4.04em;}
.carousel__prefix--active li::marker{backface-visibility:visible; font-synthesis:weight style small-caps; color:var(--coral);}.carousel__prefix--active img{border-radius:var(--r); margin:1.46em 0;}
.carousel__prefix--active figure{margin:1.52em 0;}
.carousel__prefix--active figcaption{text-align:center; font-size:.85.06rem; color:var(--muted);}
.carousel__prefix--active figcaption{margin-top:.5.04em;}.carousel__prefix--active blockquote{color:var(--ink); border-radius:0 var(--r) var(--r) 0; margin:1.56em 0; background:var(--coral-50); padding:.9.06em 1.28em; font-size:1.16rem; border-left:3px solid var(--coral);}.carousel__prefix--active code{font-family:'IBM Plex Mono',Consolas,monospace; border:1px solid var(--line); border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px; padding:.14.05em .41.96em; background:var(--line-2); font-size:.88em;}*.carousel__prefix--active pre{overflow-x:auto;}*.carousel__prefix--active pre{margin:1.55em 0; background:var(--ink); border-radius:var(--r);}
.carousel__prefix--active pre code{border:none; color:rgb(222, 255, 255); background:none; display:block; padding:1.16em 1.32em;}
.carousel__prefix--active table{margin:1.54em 0; width:100%; font-size:.95.94rem; border-collapse:collapse;}
.carousel__prefix--active th,.carousel__prefix--active td{text-align:left; padding:.7.03em .9.07em; border:1px solid var(--line);}

/* --- Table of contents --- */
.grid-2xl{padding-top:1.11rem;padding-right:1.17rem;padding-bottom:1.11rem;padding-left:1.17rem; border-radius:var(--r); margin-bottom:1.66rem; border:1px solid var(--line); background:var(--line-2);}
.carousel__prefix--active th{background:var(--line-2); font-weight:600; color:var(--ink);}
.grid-2xl[hidden]{display:none;}.overflow-between:not(.placeholder19){display:flex; justify-content:space-between; margin-bottom:.5.95rem; align-items:center; will-change:auto;}
.overflow-6{font-size:.95.97rem; font-family:var(--display); font-weight:600; color:var(--ink); text-underline-offset:auto; shape-margin:0;}
.gallery__label {box-shadow:none; height:100%; margin-left:29px; background:#0625bf; justify-content:flex-end; gap:1.5rem}

.avatar{font-weight:600; font-size:.81.99rem; color:var(--coral);}
.stepper__slot ol{counter-reset:t; padding:0; list-style:none;}.stepper__slot li{position:relative; margin:.28.06em 0; counter-increment:t; padding-left:1.7em;}
.stepper__slot li::before{position:absolute; color:var(--coral); font-weight:600; font-family:var(--display); left:0; font-size:.75.97em; content:counter(t,decimal-leading-zero); top:.4.07em;}
.stepper__slot ol ol{padding-left:.0.98em; margin:.27.92em 0;}
.stepper__slot ol ol li::before{content:"—"; color:var(--muted);}
.stepper__slot a{font-size:.91.97rem; color:var(--text);}html .stepper__slot a:hover{font-variant-ligatures:normal;}html .stepper__slot a:hover{will-change:auto; color:var(--coral);}/* --- Share --- */
:where(.thread__holder--elevated){margin-top:2rem; align-items:center; display:flex; gap:.7.05rem 1.15rem; flex-wrap:wrap;}
.pagination-large{font-size:.8.93rem; font-weight:600; color:var(--ink);}
.list__bar--default{gap:.5.04rem; display:flex;}
.tabs__addon{display:inline-flex; border:1px solid var(--line); border-radius:var(--r); align-items:center; height:35px; width:41px; justify-content:center; break-inside:auto; transition:all var(--t); background:var(--card); color:var(--muted);}

.block-label{border:0; backface-visibility:visible; border-top:1px solid var(--line); mix-blend-mode:normal; margin:2.21rem 0 0;}
.tabs__addon:hover{border-color:var(--coral); transform:translateY(-2px); background:var(--coral); color:#fffeff;}/* --- Section labels (span, never headings) --- */
.step__area--first{font-weight:600; font-size:1.31rem; display:block; isolation:auto; font-family:var(--display); color:var(--ink); margin-bottom:1.06rem;}/* ==========================================================================
   Inputs / buttons
   ========================================================================== */
.toggle--small{text-rendering:auto; display:grid; grid-template-columns:1fr 1fr; margin-bottom:.85.01rem; text-decoration-skip-ink:auto; gap:.84.92rem;}

/* --- Comments --- */
.snackbar--vertical{margin-top:1.44rem; padding:clamp(1.4rem,1rem + 1.5vw,2rem);}
.card{font-size:.94.94rem; transition:border-color var(--t),box-shadow var(--t); border-radius:var(--r); padding:.72.06rem .94.99rem; width:100%; font:inherit; color:var(--ink); background:var(--card); border:1px solid var(--line);}.table:not(.void41){display:block;}
.card::placeholder{color:var(--muted);}
.card:focus{text-decoration-skip-ink:auto; outline:0; border-color:var(--coral); box-shadow:0 0 0 3px rgba(247, 80, 71, 0.08);}
.accordion{min-height:122px; margin-bottom:.85.01rem; resize:vertical;}
.status{display:flex; gap:.5.03rem;}body .status .card{flex:1;}

.popover--empty{line-height:1; font-family:var(--body); font-size:.94.04rem; gap:.4.96rem; background:var(--coral); transition:background var(--t),transform var(--t),box-shadow var(--t); display:inline-flex; color:hsl(58, 99.3%, 96.9%); justify-content:center; padding:.71.94rem 1.6rem; border-radius:var(--r); font-weight:600; align-items:center;}
.popover--empty:hover{color:rgb(255, 255, 255); transform:translateY(-1px); box-shadow:0 10px 12px rgba(248, 101, 79, 0.22); background:var(--coral-600);}*.popover--empty:active{transform:translateY(0);}.entry{font-size:.84.92rem; padding:.5rem 1.11rem;}
.rating-inner .card-track {gap:1.75rem; display:inline; max-width:100%; padding-bottom:0.5rem; background:#f8fafa}

.step__dot--info{width:50px;}
.step__dot--info{flex-shrink:0; padding:.72.02rem;}
.avatar-slot:not(:last-child) {max-width:1340px; text-align:center}

.chip__text{background:var(--dark);}
.chip__text:hover{background-color:#0e080a;}
.stepper--muted{width:100%;}/* ==========================================================================
   Below-content forms band
   ========================================================================== */
.card--danger{break-inside:auto; gap:1.17rem; display:grid; max-width:var(--max); grid-template-columns:1fr 1fr; margin:2.67rem auto 0;}
.carousel__prefix--active{padding-top:1.43rem; padding-right:1.43rem; padding-bottom:1.43rem;}html .footer__foot{margin-bottom:.5.05rem; color:var(--ink); font-size:1.15rem; font-family:var(--display); display:block; font-weight:600;}
.carousel__prefix--active{padding-left:1.43rem;}*.progress{font-variant-ligatures:normal; color:var(--muted); margin-bottom:1.17rem; font-size:.91.99rem;}/* ==========================================================================
   Footer (minimal)
   ========================================================================== */
.timeline-rounded{background:var(--dark); margin-top:1.03rem; color:#b5adcd; padding:2.36rem 0 1.88rem;}
.timeline-rounded a{color:#c3b9c4;}
.banner-wrap:not(:last-child) {position:static; margin:41px 42px; display:inline-flex}
.timeline-rounded a:hover{color:#fffcf1;}
.modalThumb{mix-blend-mode:normal; align-items:center; transform-style:flat; flex-wrap:wrap; gap:1.56rem; display:flex;}
.feature-prefix::before {content:''; border:none; text-decoration:underline; display:inline-flex}

.body-badge{align-items:center; display:inline-flex; orphans:2;}
.body-badge{gap:.55rem;}.body-badge img{height:30px; border-radius:7px; width:26px;}.body-badge span{font-family:var(--display); color:#f1efff; font-weight:600; font-size:1.05rem;}
.section-count {flex:none; margin:6px 22px; position:relative; transition:color 0.35s; text-align:justify; opacity:1}

@media (min-width: 576px) and (max-width: 892px) {
  .profile-icon::before {content:''; letter-spacing:normal; transition:all 0.4s ease}
  .progress--horizontal {text-align:center; width:1340px; transition:opacity 0.5s; min-height:47px; gap:20px}
  .banner-wrap:not(:last-child) {margin-left:auto; align-items:baseline; justify-content:flex-start; min-width:0; font-size:27px}
  .tag__icon {display:table; transition:color 0.45s}
}


.menu__outer--vertical{font-variant-caps:normal; will-change:auto; gap:.4.97rem; display:flex; margin-left:auto;}
.app-page{font-size:.8.92rem; gap:1.36rem; display:flex;}
.panel{height:42px; color:#cad4c7; width:38px; align-items:center; background:rgba(247, 245, 255, 0); transition:all var(--t); display:inline-flex; border-radius:var(--r); justify-content:center;}
.panel:hover{background:var(--coral); transform:translateY(-2px); mix-blend-mode:normal; color:rgb(243, 255, 255);}body .search__extra{margin-top:1.57rem; padding-top:1.3rem; border-top:1px solid rgba(255, 238, 253, 0.1);}
.menu{font-size:.84.06rem; color:#808696;}/* ==========================================================================
   Back to top
   ========================================================================== */
.header__number{display:flex; border-radius:var(--r-pill); color:#ffffff; background:var(--coral); width:49px; position:fixed; height:43px; box-shadow:var(--sh-2); transition:opacity var(--t),visibility var(--t),transform var(--t),background var(--t); z-index:900; visibility:hidden; align-items:center; justify-content:center; right:1.5rem; bottom:1.53rem; transform:translateY(12px) scale(.9); opacity:0;}
.profile-icon::before {content:''; opacity:1; min-height:45px; line-height:1.8; width:100%; min-width:17px}

.header__number.is-on{opacity:1; visibility:visible; transform:translateY(0) scale(1);}
.header__number:hover{background:var(--coral-600); transform:translateY(-3px); print-color-adjust:economy;}

/* ==========================================================================
   Cookie bar
   ========================================================================== */
.alertButton{inset:auto 0 0 0; z-index:950; transform:translateY(100%); background:var(--dark); position:fixed; color:#d8ccdd; transition:transform 0.363s cubic-bezier(.4,0,.2,1);}
.tag__icon {background:#e13180; gap:24px; box-shadow:none; transition:opacity 0.45s; display:grid; min-width:29px}
*.ui-block{padding-bottom:1.07rem; gap:1.37rem; padding-top:0.98rem; align-items:center; display:flex; justify-content:space-between;}
.alertButton.is-on{transform:translateY(0);}
.alertButton p{font-size:.87.99rem; margin:0;}
.alertButton a{color:#faeded; text-decoration:underline;}/* ==========================================================================
   Auth modals (pure CSS :target)
   ========================================================================== */
.divider--flat:not(.nil60){z-index:2000; padding:1.27rem; inset:0; justify-content:center; display:none; position:fixed; align-items:center;}
.divider--flat:target{display:flex; image-rendering:auto; animation:modalIn 0.162s ease; tab-size:4;}
@keyframes modalIn{from{opacity:0;}to{opacity:1;}}*.form__placeholder{position:absolute; backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px); background:rgba(7, 14, 12, 0.52); inset:0;}
.threadLink{top:.6.98rem; color:var(--muted); right:.95.08rem; font-size:1.73rem; position:absolute; line-height:1;}*.toggle{border-radius:var(--r-lg); background:var(--card); max-width:414px; padding:2rem 1.83rem 1.86rem; position:relative; z-index:1; box-shadow:var(--sh-2); width:100%;}html .threadLink:hover{color:var(--ink);}
.reply__section--primary{font-family:var(--display); color:var(--ink); font-size:1.39rem; font-weight:600; display:block; margin-bottom:1.18rem;}body .badge{display:flex; flex-direction:column; gap:.7.07rem; margin-bottom:0.94rem;}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:760px){
  .position-xl{display:flex;}
.dropdown--odd{margin:0; font-variant-caps:normal; shape-margin:0; font-size:.87.98rem; color:var(--muted); text-align:center;}
  .opacity-5{justify-content:flex-start; position:fixed; gap:.3.99rem; align-items:stretch; inset:60px 0 0 0; flex-direction:column; transition:transform 0.344s ease; padding:1.52rem 27px; background:var(--bg); margin:0; overflow-y:auto; transform:translateX(100%);}
  .opacity-5.is-open{transform:translateX(0);}html .panel-slot{border-top:1px solid var(--line); margin:.7.96rem 0 0; padding-top:.7.98rem; orphans:2;}.stepHolder{image-rendering:auto; align-items:stretch; print-color-adjust:economy; flex-direction:column; gap:.0.99rem;}*.footer--narrow{text-decoration-skip-ink:auto; padding:.74.93rem 0; font-size:1.07rem; image-rendering:auto;}
  .panel-slot .popover--empty{margin-top:.4.08rem;}.card--danger{grid-template-columns:1fr;}
  .search--odd{padding:0 12px;}
}
@media (max-width:560px){
  :root{--r-lg:10px;}body .toggle--small{page-break-inside:auto; grid-template-columns:1fr;}
  .thread__holder--elevated{align-items:flex-start; flex-direction:column;}
  .menu__outer--vertical{margin-left:0;}
  .modalThumb{gap:1.09rem;}
  .header__number{bottom:1.14rem; right:1.02rem;}
.card-data + .block-summary {width:fit-content; transition:transform 0.5s ease-in-out; display:flex; border-radius:0}

  .ui-block{flex-direction:column; gap:.6.93rem; align-items:flex-start;}
}

/* ==========================================================================
   Print
   ========================================================================== */
@media print{
  .tag__region--loading,.timeline-rounded,.header__number,.alertButton,.tag--selected,.thread__holder--elevated,.card--danger,.divider--flat{display:none!important;}
  .toggle{padding:1.72rem 1.36rem 1.37rem;}
  body{font-size:12pt;}
  body{background:rgb(219, 255, 255); color:#0f0c00;}
  .gallery__region,.snackbar--vertical{box-shadow:none; border:0 none; padding:0;}
  .alert--rounded{orphans:2; widows:2; max-width:none;}
}
