/* =========================================================
   SOURCE STYLE BLOCK 1
========================================================= */
/* =========================================================
   SS-09A — STAGE 2 HEADER
========================================================= */

#ss-stage2-head-v01 {

  --ss-gold: #B7874C;

  --ss-dark: #4E4B4A;
  --ss-text: #746E69;
  --ss-muted: #938C86;

  --ss-line: #E8DFD5;
  --ss-soft: #FCFAF7;

  width: 100%;
  max-width: 1120px;

  margin: 20px auto;

  color: var(--ss-dark);

  background: #FFFFFF;

  border:
    1px solid var(--ss-line);

  border-radius:
    16px;

  overflow: hidden;

  font-family: inherit;
}


#ss-stage2-head-v01[hidden] {

  display:
    none !important;
}


#ss-stage2-head-v01 *,
#ss-stage2-head-v01 *::before,
#ss-stage2-head-v01 *::after {

  box-sizing:
    border-box;
}



/* =========================================================
   INTRO
========================================================= */

#ss-stage2-head-v01
.ss-s2-intro {

  width: 100%;

  padding:
    20px 26px 18px;
}


#ss-stage2-head-v01
.ss-s2-copy {

  width: 100%;

  max-width:
    none;
}



/* =========================================================
   STAGE LABEL
========================================================= */

#ss-stage2-head-v01
.ss-s2-stage-label {

  display: block;

  margin-bottom:
    5px;

  color:
    var(--ss-gold);

  font-size:
    11px;

  font-weight:
    700;

  line-height:
    1.8;
}



/* =========================================================
   TITLE + ICON
   SAME COMPOSITION AS SS-01A
========================================================= */

#ss-stage2-head-v01
.ss-s2-title-row {

  display: flex;

  align-items: center;

  justify-content:
    flex-start;

  gap:
    12px;

  width: 100%;
}


/*
   RTL + image first:
   icon stays on the RIGHT,
   title immediately beside it.
*/

#ss-stage2-head-v01
.ss-s2-icon {

  width:
    66px;

  height:
    66px;

  flex:
    0 0 66px;

  display: block;

  object-fit:
    contain;

  opacity: 0;

  animation:
    ssS2IconEnter
    420ms
    cubic-bezier(.22,.8,.3,1)
    120ms
    forwards;
}


#ss-stage2-head-v01
h2 {

  margin: 0;

  color:
    var(--ss-dark);

  font-size:
    clamp(23px,2.5vw,29px);

  font-weight:
    800;

  line-height:
    1.55;
}



/* =========================================================
   DESCRIPTION

   IMPORTANT:
   The sentence is NOT constrained by title/icon width.
   It uses the whole header width just like SS-01A.
========================================================= */

#ss-stage2-head-v01
.ss-s2-description {

  display: block;

  width:
    calc(100% - 78px);

  max-width:
    none;

  margin:
    7px 78px 0 0;

  padding: 0;

  color:
    var(--ss-text);

  font-size:
    13px;

  font-weight:
    450;

  line-height:
    2;

  text-align:
    right;

  white-space:
    normal;

  word-break:
    normal;

  overflow-wrap:
    normal;
}



/* =========================================================
   NAVIGATION
========================================================= */

#ss-stage2-head-v01
.ss-s2-nav {

  width: 100%;

  border-top:
    1px solid var(--ss-line);

  background:
    var(--ss-soft);
}


#ss-stage2-head-v01
.ss-s2-steps {

  display: grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  width: 100%;

  margin: 0;
  padding: 0;

  list-style:
    none;
}



/* =========================================================
   STEP
========================================================= */

#ss-stage2-head-v01
.ss-s2-step {

  min-width: 0;

  min-height:
    84px;

  display: flex;

  align-items: center;

  gap:
    13px;

  padding:
    14px 20px;

  border-left:
    1px solid var(--ss-line);

  transition:
    background-color
    160ms ease;
}


#ss-stage2-head-v01
.ss-s2-step:last-child {

  border-left:
    0;
}


#ss-stage2-head-v01
.ss-s2-step.is-active {

  background:
    rgba(183,135,76,.045);
}



/* =========================================================
   STEP NUMBER
========================================================= */

#ss-stage2-head-v01
.ss-s2-number {

  width:
    43px;

  height:
    43px;

  flex:
    0 0 43px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius:
    50%;

  background:
    #EEEAE5;

  color:
    var(--ss-gold);

  font-size:
    16px;

  font-weight:
    800;

  line-height:
    1;
}



/* COMPLETED */

#ss-stage2-head-v01
.ss-s2-step.is-done
.ss-s2-number {

  background:
    rgba(183,135,76,.12);

  color:
    var(--ss-gold);
}



/* ACTIVE */

#ss-stage2-head-v01
.ss-s2-step.is-active
.ss-s2-number {

  background:
    #D4A65D;

  color:
    #FFFFFF;

  animation:
    ssS2ActiveStep
    360ms
    cubic-bezier(.22,.8,.3,1)
    180ms
    both;
}



/* =========================================================
   STEP COPY
========================================================= */

#ss-stage2-head-v01
.ss-s2-step-copy {

  min-width:
    0;
}


#ss-stage2-head-v01
.ss-s2-step-copy strong {

  display: block;

  margin-bottom:
    3px;

  color:
    #373330;

  font-size:
    15px;

  font-weight:
    750;

  line-height:
    1.65;
}


#ss-stage2-head-v01
.ss-s2-step-copy span {

  display: block;

  color:
    var(--ss-muted);

  font-size:
    11.5px;

  font-weight:
    450;

  line-height:
    1.7;
}



/* =========================================================
   HOVER
========================================================= */

@media (hover:hover) {

  #ss-stage2-head-v01
  .ss-s2-step:hover {

    background:
      rgba(183,135,76,.035);
  }

}



/* =========================================================
   OPEN MOTION
========================================================= */

#ss-stage2-head-v01.ss-s2-is-opening {

  animation:
    ssS2HeaderEnter
    380ms
    cubic-bezier(.22,.8,.3,1)
    both;
}



@keyframes ssS2HeaderEnter {

  from {

    opacity: 0;

    transform:
      translateY(6px);
  }

  to {

    opacity: 1;

    transform:
      translateY(0);
  }

}



@keyframes ssS2IconEnter {

  from {

    opacity: 0;

    transform:
      translateY(-5px)
      scale(.97);
  }

  to {

    opacity: 1;

    transform:
      translateY(0)
      scale(1);
  }

}



@keyframes ssS2ActiveStep {

  from {

    transform:
      scale(.96);
  }

  to {

    transform:
      scale(1);
  }

}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 850px) {

  #ss-stage2-head-v01
  .ss-s2-intro {

    padding:
      18px 20px 17px;
  }


  #ss-stage2-head-v01
  .ss-s2-icon {

    width:
      60px;

    height:
      60px;

    flex-basis:
      60px;
  }


  #ss-stage2-head-v01
  .ss-s2-step {

    padding:
      13px 14px;
  }


  #ss-stage2-head-v01
  .ss-s2-step-copy strong {

    font-size:
      14px;
  }

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 650px) {

  #ss-stage2-head-v01 {

    margin:
      16px auto;

    border-radius:
      14px;
  }


  #ss-stage2-head-v01
  .ss-s2-intro {

    padding:
      16px 15px 15px;
  }


  #ss-stage2-head-v01
  .ss-s2-stage-label {

    font-size:
      10px;
  }


  #ss-stage2-head-v01
  .ss-s2-title-row {

    gap:
      9px;
  }


  #ss-stage2-head-v01
  .ss-s2-icon {

    width:
      48px;

    height:
      48px;

    flex-basis:
      48px;
  }


  #ss-stage2-head-v01
  h2 {

    font-size:
      21px;
  }


  #ss-stage2-head-v01
  .ss-s2-description {

    width:
      100%;

    margin:
      7px 0 0;

    font-size:
      12px;

    line-height:
      1.95;
  }



  /* =======================================================
     STEPS — VERTICAL
  ======================================================== */

  #ss-stage2-head-v01
  .ss-s2-steps {

    grid-template-columns:
      1fr;
  }


  #ss-stage2-head-v01
  .ss-s2-step {

    min-height:
      68px;

    padding:
      11px 15px;

    border-left:
      0;

    border-bottom:
      1px solid var(--ss-line);
  }


  #ss-stage2-head-v01
  .ss-s2-step:last-child {

    border-bottom:
      0;
  }


  #ss-stage2-head-v01
  .ss-s2-number {

    width:
      37px;

    height:
      37px;

    flex-basis:
      37px;

    font-size:
      14px;
  }


  #ss-stage2-head-v01
  .ss-s2-step-copy strong {

    font-size:
      13.5px;
  }


  #ss-stage2-head-v01
  .ss-s2-step-copy span {

    font-size:
      11px;
  }

}



/* =========================================================
   REDUCED MOTION
========================================================= */

@media (
  prefers-reduced-motion:
  reduce
) {

  #ss-stage2-head-v01,
  #ss-stage2-head-v01 *,
  #ss-stage2-head-v01 *::before,
  #ss-stage2-head-v01 *::after {

    animation:
      none !important;

    transition:
      none !important;
  }


  #ss-stage2-head-v01
  .ss-s2-icon {

    opacity:
      1;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 2
========================================================= */
/* =========================================================
   SS-10 — TRANSFER + REPORT INFO
========================================================= */

#ss-stage2-transfer-v01 {

  --ss-gold: #B7874C;
  --ss-gold-dark: #956A3A;

  --ss-dark: #4E4B4A;
  --ss-text: #746E69;
  --ss-muted: #938C86;

  --ss-line: #E8DFD5;


  /* =======================================================
     LOCKED FIELD COLOR SYSTEM
  ======================================================== */

  /* Manual input */
  --ss-manual-bg: #FFFFFF;


  /* Editable default / Override */
  --ss-editable-bg: #FBF5E9;
  --ss-editable-line: #D9B77C;


  /* Fixed / Calculated / Transferred */
  --ss-fixed-bg-top: #F8F7F5;
  --ss-fixed-bg-bottom: #F1EFEC;
  --ss-fixed-line: #E1DDD8;


  width: 100%;
  max-width: 1120px;

  margin:
    0 auto 16px;

  color:
    var(--ss-dark);

  font-family:
    inherit;
}


#ss-stage2-transfer-v01[hidden] {

  display:
    none !important;
}


#ss-stage2-transfer-v01 *,
#ss-stage2-transfer-v01 *::before,
#ss-stage2-transfer-v01 *::after {

  box-sizing:
    border-box;
}



/* =========================================================
   COMMON CARDS
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-transfer-card,

#ss-stage2-transfer-v01
.ss-s2-report-card {

  width:
    100%;

  border:
    1px solid var(--ss-line);

  border-radius:
    15px;

  background:
    #FFFFFF;
}



/* =========================================================
   TRANSFER CARD
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-transfer-card {

  margin-bottom:
    12px;

  padding:
    20px;
}



/* =========================================================
   SECTION HEADER
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-section-head {

  margin-bottom:
    15px;
}


#ss-stage2-transfer-v01
.ss-s2-section-head h3 {

  margin:
    0 0 4px;

  color:
    var(--ss-dark);

  font-size:
    16px;

  font-weight:
    800;

  line-height:
    1.7;
}


#ss-stage2-transfer-v01
.ss-s2-section-head p {

  margin:
    0;

  color:
    var(--ss-muted);

  font-size:
    11px;

  font-weight:
    400;

  line-height:
    1.8;
}



/* =========================================================
   TRANSFER GRID
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-transfer-grid {

  display:
    grid;

  grid-template-columns:
    repeat(5,minmax(0,1fr));

  gap:
    9px;
}



/* =========================================================
   FIXED / TRANSFERRED DATA
   GREY COLOR SYSTEM
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-readonly {

  min-width:
    0;

  padding:
    12px 13px;

  border:
    1px solid var(--ss-fixed-line);

  border-radius:
    11px;

  background:
    linear-gradient(
      180deg,
      var(--ss-fixed-bg-top),
      var(--ss-fixed-bg-bottom)
    );
}


#ss-stage2-transfer-v01
.ss-s2-readonly-label {

  display:
    block;

  min-height:
    34px;

  margin-bottom:
    7px;

  color:
    var(--ss-text);

  font-size:
    10.5px;

  font-weight:
    650;

  line-height:
    1.7;
}


#ss-stage2-transfer-v01
.ss-s2-readonly-value {

  min-width:
    0;
}


#ss-stage2-transfer-v01
.ss-s2-readonly-value strong {

  display:
    block;

  color:
    var(--ss-dark);

  font-size:
    15px;

  font-weight:
    800;

  line-height:
    1.5;

  direction:
    ltr;

  text-align:
    right;

  font-variant-numeric:
    tabular-nums;

  overflow-wrap:
    anywhere;
}


#ss-stage2-transfer-v01
.ss-s2-readonly-value span {

  display:
    block;

  margin-top:
    2px;

  color:
    var(--ss-muted);

  font-size:
    9px;

  font-weight:
    500;

  line-height:
    1.6;
}



/* =========================================================
   REPORT DETAILS
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-card {

  overflow:
    hidden;
}



/* REMOVE NATIVE ARROW */

#ss-stage2-transfer-v01
.ss-s2-report-summary {

  list-style:
    none;
}


#ss-stage2-transfer-v01
.ss-s2-report-summary::-webkit-details-marker {

  display:
    none;
}


#ss-stage2-transfer-v01
.ss-s2-report-summary::marker {

  display:
    none;

  content:
    "";
}



/* =========================================================
   REPORT SUMMARY
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-summary {

  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    22px;

  min-height:
    88px;

  padding:
    17px 20px;

  cursor:
    pointer;

  user-select:
    none;

  transition:
    background-color 160ms ease;
}


@media (hover:hover) {

  #ss-stage2-transfer-v01
  .ss-s2-report-summary:hover {

    background:
      #FCFBF9;
  }

}


#ss-stage2-transfer-v01
.ss-s2-report-summary-copy {

  min-width:
    0;

  flex:
    1 1 auto;
}



/* =========================================================
   REPORT TITLE
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-title-row {

  display:
    flex;

  align-items:
    center;

  gap:
    8px;

  flex-wrap:
    wrap;

  margin-bottom:
    4px;
}


#ss-stage2-transfer-v01
.ss-s2-report-title-row h3 {

  margin:
    0;

  color:
    var(--ss-dark);

  font-size:
    16px;

  font-weight:
    800;

  line-height:
    1.7;
}


#ss-stage2-transfer-v01
.ss-s2-report-summary p {

  max-width:
    780px;

  margin:
    0;

  color:
    var(--ss-muted);

  font-size:
    11px;

  font-weight:
    400;

  line-height:
    1.9;
}



/* =========================================================
   OPTIONAL BADGE
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-optional-badge {

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  min-height:
    22px;

  padding:
    2px 9px;

  border:
    1px solid rgba(183,135,76,.20);

  border-radius:
    999px;

  background:
    #F3EADA;

  color:
    var(--ss-gold-dark);

  font-size:
    9px;

  font-weight:
    700;

  line-height:
    1.4;

  white-space:
    nowrap;
}



/* =========================================================
   INSERT INFO BUTTON
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-open-button {

  min-width:
    116px;

  min-height:
    40px;

  flex:
    0 0 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    8px 16px;

  border:
    1px solid rgba(183,135,76,.48);

  border-radius:
    10px;

  background:
    #FBF5E9;

  color:
    var(--ss-gold-dark);

  font-size:
    11px;

  font-weight:
    750;

  line-height:
    1.5;

  white-space:
    nowrap;

  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    transform 160ms ease;
}


@media (hover:hover) {

  #ss-stage2-transfer-v01
  .ss-s2-report-summary:hover
  .ss-s2-report-open-button {

    background:
      #F5E8D2;

    border-color:
      rgba(183,135,76,.70);
  }

}


/*
  When section is open:
  visual state changes slightly,
  but the text ALWAYS remains "درج اطلاعات".
*/

#ss-stage2-transfer-v01
.ss-s2-report-card[open]
.ss-s2-report-open-button {

  background:
    #F1E5D2;

  border-color:
    rgba(183,135,76,.58);

  color:
    var(--ss-gold-dark);
}



/* =========================================================
   REPORT BODY
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-body {

  padding:
    0 20px 20px;

  border-top:
    1px solid var(--ss-line);

  animation:
    ssS2ReportOpen
    260ms
    cubic-bezier(.22,.8,.3,1)
    both;
}



/* =========================================================
   REPORT GRID
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-report-grid {

  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    14px;

  padding-top:
    17px;
}


#ss-stage2-transfer-v01
.ss-s2-field {

  min-width:
    0;
}



/* =========================================================
   FIELD LABEL
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-field-label {

  display:
    block;

  margin-bottom:
    6px;

  color:
    var(--ss-dark);

  font-size:
    12.5px;

  font-weight:
    700;

  line-height:
    1.7;
}



/* =========================================================
   MANUAL INPUT
   WHITE COLOR SYSTEM
========================================================= */

#ss-stage2-transfer-v01
.ss-s2-input {

  width:
    100%;

  height:
    52px;

  padding:
    0 13px;

  border:
    1px solid rgba(183,135,76,.43);

  border-radius:
    11px;

  outline:
    none;

  background:
    var(--ss-manual-bg);

  color:
    var(--ss-dark);

  font-family:
    inherit;

  font-size:
    14px;

  font-weight:
    550;

  line-height:
    1.5;

  transition:
    border-color 160ms ease,
    box-shadow 160ms ease;
}


#ss-stage2-transfer-v01
.ss-s2-input::placeholder {

  color:
    #B6AFAA;

  font-size:
    11px;

  font-weight:
    400;
}


#ss-stage2-transfer-v01
.ss-s2-input:focus {

  border-color:
    var(--ss-gold);

  box-shadow:
    0 0 0 3px
    rgba(183,135,76,.10);
}



/* PHONE */

#ss-stage2-transfer-v01
.ss-s2-phone {

  text-align:
    left;

  font-variant-numeric:
    tabular-nums;
}



/* =========================================================
   SECTION OPEN MOTION
========================================================= */

#ss-stage2-transfer-v01.ss-s2-is-opening {

  animation:
    ssS2TransferEnter
    380ms
    cubic-bezier(.22,.8,.3,1)
    both;
}


@keyframes ssS2TransferEnter {

  from {

    opacity:
      0;

    transform:
      translateY(6px);
  }

  to {

    opacity:
      1;

    transform:
      translateY(0);
  }

}


@keyframes ssS2ReportOpen {

  from {

    opacity:
      0;

    transform:
      translateY(-4px);
  }

  to {

    opacity:
      1;

    transform:
      translateY(0);
  }

}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

  #ss-stage2-transfer-v01
  .ss-s2-transfer-grid {

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  #ss-stage2-transfer-v01
  .ss-s2-readonly:last-child {

    grid-column:
      1 / -1;
  }

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 650px) {

  #ss-stage2-transfer-v01 {

    margin-bottom:
      12px;
  }



  #ss-stage2-transfer-v01
  .ss-s2-transfer-card {

    padding:
      15px 14px;
  }



  #ss-stage2-transfer-v01
  .ss-s2-transfer-grid {

    grid-template-columns:
      1fr;
  }



  #ss-stage2-transfer-v01
  .ss-s2-readonly:last-child {

    grid-column:
      auto;
  }



  #ss-stage2-transfer-v01
  .ss-s2-readonly-label {

    min-height:
      0;
  }



  /* REPORT SUMMARY */

  #ss-stage2-transfer-v01
  .ss-s2-report-summary {

    align-items:
      center;

    gap:
      12px;

    min-height:
      0;

    padding:
      15px 14px;
  }



  #ss-stage2-transfer-v01
  .ss-s2-report-title-row h3,

  #ss-stage2-transfer-v01
  .ss-s2-section-head h3 {

    font-size:
      15px;
  }



  #ss-stage2-transfer-v01
  .ss-s2-report-summary p {

    font-size:
      10.5px;

    line-height:
      1.8;
  }



  #ss-stage2-transfer-v01
  .ss-s2-report-open-button {

    min-width:
      90px;

    min-height:
      38px;

    padding:
      7px 11px;

    font-size:
      10px;
  }



  /* REPORT BODY */

  #ss-stage2-transfer-v01
  .ss-s2-report-body {

    padding:
      0 14px 15px;
  }



  #ss-stage2-transfer-v01
  .ss-s2-report-grid {

    grid-template-columns:
      1fr;

    gap:
      12px;
  }

}



/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

  #ss-stage2-transfer-v01
  .ss-s2-report-summary {

    align-items:
      flex-start;

    flex-direction:
      column;
  }


  #ss-stage2-transfer-v01
  .ss-s2-report-open-button {

    min-width:
      120px;
  }

}



/* =========================================================
   REDUCED MOTION
========================================================= */

@media (
  prefers-reduced-motion:
  reduce
) {

  #ss-stage2-transfer-v01,
  #ss-stage2-transfer-v01 *,
  #ss-stage2-transfer-v01 *::before,
  #ss-stage2-transfer-v01 *::after {

    animation:
      none !important;

    transition:
      none !important;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 3
========================================================= */
/* =========================================================
   ROOT
========================================================= */

#ss-s2-uses-v11{

  --ss-gold:#B7874C;
  --ss-gold-line:#DAB889;
  --ss-gold-soft:#FBF5E9;

  --ss-dark:#4E4B4A;
  --ss-text:#746E69;
  --ss-muted:#958E88;

  --ss-line:#E8DFD5;

  --ss-fixed:#F2F1EF;
  --ss-fixed-line:#DEDAD5;

  width:100%;
  max-width:1120px;

  margin:0 auto 16px;

  color:var(--ss-dark);

  font-family:inherit;
}


/* hard gate */

#ss-s2-uses-v11[hidden],
#ss-s2-uses-v11 [hidden]{
  display:none !important;
}


#ss-s2-uses-v11 *,
#ss-s2-uses-v11 *::before,
#ss-s2-uses-v11 *::after{
  box-sizing:border-box;
}


/* =========================================================
   MAIN HEADER
========================================================= */

#ss-s2-uses-v11 .ss11-main-head{

  position:relative;

  display:flex;
  align-items:center;

  gap:16px;

  min-height:96px;

  padding:18px 22px;

  margin-bottom:12px;

  overflow:hidden;

  border:1px solid var(--ss-line);
  border-radius:16px;

  background:#fff;
}


#ss-s2-uses-v11 .ss11-main-head::after{

  content:"";

  position:absolute;

  right:24px;
  bottom:0;

  width:120px;
  height:2px;

  border-radius:999px 999px 0 0;

  background:
    linear-gradient(
      90deg,
      rgba(183,135,76,0),
      rgba(183,135,76,.45),
      var(--ss-gold)
    );
}


#ss-s2-uses-v11 .ss11-main-icon{

  width:54px;
  height:54px;

  flex:0 0 54px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:7px;

  border:1px solid var(--ss-gold-line);
  border-radius:14px;

  background:var(--ss-gold-soft);
}


#ss-s2-uses-v11 .ss11-main-icon img{

  display:block;

  width:40px;
  height:40px;

  object-fit:contain;
}


#ss-s2-uses-v11 .ss11-main-icon img[src=""],
#ss-s2-uses-v11 .ss11-main-icon img:not([src]){
  visibility:hidden;
}


#ss-s2-uses-v11 .ss11-main-copy{

  min-width:0;

  display:flex;
  align-items:stretch;

  gap:11px;
}


#ss-s2-uses-v11 .ss11-main-accent{

  width:3px;

  flex:0 0 3px;

  border-radius:999px;

  background:var(--ss-gold);
}


#ss-s2-uses-v11 .ss11-main-copy h3{

  margin:0 0 3px;

  font-size:18px;
  font-weight:850;
  line-height:1.7;
}


#ss-s2-uses-v11 .ss11-main-copy p{

  margin:0;

  color:var(--ss-text);

  font-size:10px;
  line-height:1.9;
}


/* =========================================================
   CARD
========================================================= */

#ss-s2-uses-v11 .ss11-card{

  position:relative;

  padding:18px 20px 20px;

  margin-bottom:12px;

  border:1px solid var(--ss-line);
  border-radius:15px;

  background:#fff;
}


#ss-s2-uses-v11 .ss11-card::before{

  content:"";

  position:absolute;

  top:0;
  right:20px;

  width:52px;
  height:2px;

  background:var(--ss-gold-line);

  border-radius:0 0 999px 999px;
}


#ss-s2-uses-v11 .ss11-card-head{

  padding-bottom:12px;
  margin-bottom:14px;

  border-bottom:1px solid var(--ss-line);
}


#ss-s2-uses-v11 .ss11-card-head h4{

  margin:0;

  font-size:14px;
  font-weight:800;
  line-height:1.7;
}


/* =========================================================
   USES
========================================================= */

#ss-s2-uses-v11 .ss11-use-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-uses-v11 .ss11-use{

  min-height:72px;

  display:flex;
  align-items:center;

  gap:11px;

  padding:12px 13px;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#fff;

  cursor:pointer;
}


#ss-s2-uses-v11 .ss11-use.is-base{
  background:#FAF8F5;
}


#ss-s2-uses-v11 .ss11-use:hover{
  border-color:var(--ss-gold-line);
}


#ss-s2-uses-v11 .ss11-use-check input{

  position:absolute;

  opacity:0;

  pointer-events:none;
}


#ss-s2-uses-v11 .ss11-checkbox{

  position:relative;

  display:block;

  width:21px;
  height:21px;

  border:1px solid #CEC8C2;
  border-radius:6px;

  background:#fff;
}


#ss-s2-uses-v11
.ss11-use-check
input:checked + .ss11-checkbox{

  border-color:var(--ss-gold);

  background:var(--ss-gold);
}


#ss-s2-uses-v11
.ss11-use-check
input:checked + .ss11-checkbox::after{

  content:"";

  position:absolute;

  top:6px;
  left:5px;

  width:8px;
  height:4px;

  border-left:2px solid #fff;
  border-bottom:2px solid #fff;

  transform:rotate(-45deg);
}


#ss-s2-uses-v11 .ss11-use-copy strong{

  display:block;

  margin-bottom:2px;

  font-size:12px;
  font-weight:800;
}


#ss-s2-uses-v11 .ss11-use-copy small{

  display:block;

  color:var(--ss-muted);

  font-size:8.5px;
  line-height:1.7;
}


/* =========================================================
   ALLOCATION
========================================================= */

#ss-s2-uses-v11 .ss11-allocation-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-uses-v11 .ss11-allocation{

  min-width:0;

  padding:14px;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#FCFBFA;
}


#ss-s2-uses-v11 .ss11-allocation-title{

  display:block;

  margin-bottom:12px;

  font-size:11.5px;
  font-weight:800;
}


#ss-s2-uses-v11 .ss11-allocation-fields{

  display:grid;

  gap:11px;
}


/* =========================================================
   FIELD GRID
========================================================= */

#ss-s2-uses-v11 .ss11-fields{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:14px;
}


#ss-s2-uses-v11 .ss11-field{
  min-width:0;
}


#ss-s2-uses-v11 .ss11-field label{

  display:block;

  margin-bottom:6px;

  font-size:10.5px;
  font-weight:700;
  line-height:1.7;
}


/* =========================================================
   INPUTS

   white = manual
   cream = editable default
   grey = calculated / fixed
========================================================= */

#ss-s2-uses-v11 .ss11-control,
#ss-s2-uses-v11 .ss11-select{

  min-height:48px;

  display:flex;
  align-items:stretch;

  overflow:hidden;

  border-radius:11px;
}


#ss-s2-uses-v11 .is-manual{

  border:1px solid var(--ss-line);

  background:#fff;
}


#ss-s2-uses-v11 .is-default{

  border:1px solid var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-uses-v11 .ss11-control:focus-within,
#ss-s2-uses-v11 .ss11-select:focus-within{

  border-color:var(--ss-gold);

  box-shadow:
    0 0 0 3px rgba(183,135,76,.08);
}


#ss-s2-uses-v11 .ss11-control input{

  flex:1 1 auto;

  width:100%;
  min-width:0;
  height:46px;

  padding:0 12px;

  border:0;
  outline:0;

  background:transparent;

  color:var(--ss-dark);

  font-family:inherit;
  font-size:13px;
  font-weight:700;

  direction:ltr;
  text-align:right;

  font-variant-numeric:tabular-nums;
}


#ss-s2-uses-v11 .ss11-control > span{

  min-width:64px;

  flex:0 0 auto;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 9px;

  border-right:
    1px solid rgba(183,135,76,.15);

  color:var(--ss-muted);

  font-size:8.5px;

  white-space:nowrap;
}


#ss-s2-uses-v11 .ss11-select select{

  width:100%;
  height:46px;

  padding:0 12px;

  border:0;
  outline:0;

  background:transparent;

  color:var(--ss-dark);

  font-family:inherit;
  font-size:13px;
  font-weight:700;

  cursor:pointer;
}


/* =========================================================
   READ ONLY
========================================================= */

#ss-s2-uses-v11 .ss11-readonly{

  min-height:48px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:8px;

  padding:0 12px;

  border:1px solid var(--ss-fixed-line);
  border-radius:11px;

  background:var(--ss-fixed);
}


#ss-s2-uses-v11 .ss11-readonly strong{

  font-size:12px;
  font-weight:800;

  direction:ltr;
}


#ss-s2-uses-v11 .ss11-readonly span{

  color:var(--ss-muted);

  font-size:8px;
}



/* =========================================================
   RESIDENTIAL AREA SUMMARY
========================================================= */

#ss-s2-uses-v11 .ss11-summary-head p{

  margin:4px 0 0;

  color:var(--ss-text);

  font-size:9px;
  line-height:1.8;
}


#ss-s2-uses-v11 .ss11-summary-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-uses-v11 .ss11-summary-item{

  min-width:0;

  min-height:92px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:13px 14px;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#FCFBFA;
}


#ss-s2-uses-v11 .ss11-summary-item.is-reference{

  border-color:var(--ss-fixed-line);

  background:var(--ss-fixed);
}


#ss-s2-uses-v11 .ss11-summary-item.is-primary{

  border-color:var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-uses-v11 .ss11-summary-label{

  display:block;

  margin-bottom:7px;

  color:var(--ss-text);

  font-size:9px;
  font-weight:700;
  line-height:1.7;
}


#ss-s2-uses-v11 .ss11-summary-item strong{

  display:block;

  color:var(--ss-dark);

  font-size:17px;
  font-weight:850;
  line-height:1.35;

  direction:ltr;
  text-align:right;

  font-variant-numeric:tabular-nums;
}


#ss-s2-uses-v11 .ss11-summary-item small{

  display:block;

  margin-top:3px;

  color:var(--ss-muted);

  font-size:8px;
  line-height:1.6;
}


#ss-s2-uses-v11 .ss11-summary-note{

  margin-top:12px;

  padding:12px 14px;

  border:1px solid var(--ss-line);
  border-radius:11px;

  background:#FAF9F7;
}


#ss-s2-uses-v11 .ss11-summary-note.is-aligned{

  border-color:var(--ss-fixed-line);

  background:var(--ss-fixed);
}


#ss-s2-uses-v11 .ss11-summary-note.is-different{

  border-color:var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-uses-v11 .ss11-summary-note strong{

  display:block;

  margin-bottom:3px;

  font-size:10.5px;
  font-weight:800;
  line-height:1.8;
}


#ss-s2-uses-v11 .ss11-summary-note p{

  margin:0;

  color:var(--ss-text);

  font-size:9px;
  line-height:1.9;
}


/* =========================================================
   COMMERCIAL GROUND MODE
========================================================= */

#ss-s2-uses-v11 .ss11-subsection{

  margin-bottom:17px;
}


#ss-s2-uses-v11 .ss11-subsection h5{

  margin:0 0 9px;

  font-size:11px;
  font-weight:800;
}


#ss-s2-uses-v11 .ss11-choice-grid{

  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:9px;
}


#ss-s2-uses-v11 .ss11-choice{

  position:relative;

  cursor:pointer;
}


#ss-s2-uses-v11 .ss11-choice input{

  position:absolute;

  opacity:0;

  pointer-events:none;
}


#ss-s2-uses-v11 .ss11-choice > span{

  min-height:65px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:10px 12px;

  border:1px solid var(--ss-line);
  border-radius:11px;

  background:#fff;
}


#ss-s2-uses-v11
.ss11-choice
input:checked + span{

  border-color:var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-uses-v11 .ss11-choice strong{

  margin-bottom:2px;

  font-size:10.5px;
  font-weight:800;
}


#ss-s2-uses-v11 .ss11-choice small{

  color:var(--ss-muted);

  font-size:8.5px;
  line-height:1.7;
}


/* =========================================================
   ENTER MOTION
========================================================= */

#ss-s2-uses-v11.is-entering{

  animation:
    ss11Enter
    330ms
    cubic-bezier(.22,.8,.3,1)
    both;
}


@keyframes ss11Enter{

  from{
    opacity:0;
    transform:translateY(5px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

  #ss-s2-uses-v11 .ss11-use-grid,
  #ss-s2-uses-v11 .ss11-allocation-grid,
  #ss-s2-uses-v11 .ss11-fields,
  #ss-s2-uses-v11 .ss11-summary-grid{

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:620px){

  #ss-s2-uses-v11 .ss11-main-head{

    min-height:auto;

    align-items:flex-start;

    padding:15px 14px;
  }


  #ss-s2-uses-v11 .ss11-main-icon{

    width:44px;
    height:44px;

    flex-basis:44px;

    padding:6px;

    border-radius:12px;
  }


  #ss-s2-uses-v11 .ss11-main-icon img{

    width:32px;
    height:32px;
  }


  #ss-s2-uses-v11 .ss11-main-copy h3{
    font-size:16px;
  }


  #ss-s2-uses-v11 .ss11-card{
    padding:16px 14px;
  }


  #ss-s2-uses-v11 .ss11-use-grid,
  #ss-s2-uses-v11 .ss11-allocation-grid,
  #ss-s2-uses-v11 .ss11-fields,
  #ss-s2-uses-v11 .ss11-choice-grid,
  #ss-s2-uses-v11 .ss11-summary-grid{

    grid-template-columns:1fr;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

  #ss-s2-uses-v11,
  #ss-s2-uses-v11 *{

    animation:none !important;
    transition:none !important;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 4
========================================================= */
/* =========================================================
   ROOT
========================================================= */

#ss-s2-parking{

  --gold:#B7874C;
  --gold-line:#DAB889;
  --gold-soft:#FBF5E9;

  --dark:#4E4B4A;
  --text:#746E69;
  --muted:#958E88;

  --line:#E8DFD5;

  --fixed:#F2F1EF;
  --fixed-strong:#ECEAE7;
  --fixed-line:#DEDAD5;

  --good:#607A66;
  --good-bg:#F3F7F3;
  --good-line:#DCE7DE;

  --danger:#A5534E;
  --danger-bg:#FCF3F2;
  --danger-line:#ECD8D5;

  width:100%;
  max-width:1120px;

  margin:0 auto 16px;

  color:var(--dark);

  font-family:inherit;
}


#ss-s2-parking[hidden],
#ss-s2-parking [hidden]{

  display:none !important;
}


#ss-s2-parking *,
#ss-s2-parking *::before,
#ss-s2-parking *::after{

  box-sizing:border-box;
}


/* =========================================================
   HEADER
========================================================= */

#ss-s2-parking .ss12-main-head{

  position:relative;

  display:flex;
  align-items:center;

  gap:16px;

  min-height:96px;

  padding:18px 22px;

  margin-bottom:12px;

  overflow:hidden;

  border:1px solid var(--line);
  border-radius:16px;

  background:#fff;
}


#ss-s2-parking .ss12-main-head::after{

  content:"";

  position:absolute;

  right:24px;
  bottom:0;

  width:120px;
  height:2px;

  border-radius:999px 999px 0 0;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(183,135,76,.45),
      var(--gold)
    );
}


#ss-s2-parking .ss12-main-icon{

  width:54px;
  height:54px;

  flex:0 0 54px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:7px;

  border:1px solid var(--gold-line);
  border-radius:14px;

  background:var(--gold-soft);
}


#ss-s2-parking .ss12-main-icon img{

  display:block;

  width:40px;
  height:40px;

  object-fit:contain;
}


#ss-s2-parking .ss12-main-copy{

  min-width:0;

  display:flex;
  align-items:stretch;

  gap:11px;
}


#ss-s2-parking .ss12-main-accent{

  width:3px;

  flex:0 0 3px;

  border-radius:999px;

  background:var(--gold);
}


#ss-s2-parking .ss12-main-copy h3{

  margin:0 0 3px;

  color:var(--dark);

  font-size:18px;
  font-weight:850;
  line-height:1.7;
}


#ss-s2-parking .ss12-main-copy p{

  margin:0;

  color:var(--text);

  font-size:10px;
  line-height:1.9;
}


/* =========================================================
   CARDS
========================================================= */

#ss-s2-parking .ss12-card{

  position:relative;

  padding:18px 20px 20px;

  margin-bottom:12px;

  overflow:visible;

  border:1px solid var(--line);
  border-radius:15px;

  background:#fff;
}


#ss-s2-parking .ss12-card::before{

  content:"";

  position:absolute;

  top:0;
  right:20px;

  width:52px;
  height:2px;

  background:var(--gold-line);
}


#ss-s2-parking .ss12-card-head{

  padding-bottom:12px;
  margin-bottom:14px;

  border-bottom:1px solid var(--line);
}


#ss-s2-parking .ss12-card-head h4{

  margin:0;

  color:var(--dark);

  font-size:14px;
  font-weight:800;
  line-height:1.7;
}


/* =========================================================
   OUTPUT
========================================================= */

#ss-s2-parking .ss12-output-grid{

  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:9px;
}


#ss-s2-parking .ss12-output-grid-2{

  grid-template-columns:
    repeat(2,minmax(0,1fr));
}


#ss-s2-parking .ss12-output{

  min-width:0;
  min-height:76px;

  display:flex;
  flex-direction:column;
  justify-content:space-between;

  padding:11px 12px;

  border:1px solid var(--fixed-line);
  border-radius:11px;

  background:var(--fixed);
}


#ss-s2-parking .ss12-output.is-total{

  background:var(--fixed-strong);
}


#ss-s2-parking .ss12-output-label{

  color:var(--text);

  font-size:9.5px;
  font-weight:650;
}


#ss-s2-parking .ss12-output-value{

  display:flex;
  align-items:baseline;

  gap:5px;

  margin-top:6px;
}


#ss-s2-parking .ss12-output-value strong{

  color:var(--dark);

  font-size:16px;
  font-weight:850;

  direction:ltr;

  font-variant-numeric:
    tabular-nums;
}


#ss-s2-parking .ss12-output-value strong.ss12-text-value{

  font-size:11px;

  direction:rtl;
}


#ss-s2-parking .ss12-output-value small{

  color:var(--muted);

  font-size:8px;
}


/* =========================================================
   INPUTS
========================================================= */

#ss-s2-parking .ss12-fields{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:14px;
}


#ss-s2-parking .ss12-field{

  min-width:0;
}


#ss-s2-parking .ss12-field label{

  display:block;

  margin-bottom:6px;

  color:var(--dark);

  font-size:10.5px;
  font-weight:700;
}


#ss-s2-parking .ss12-label-row{

  display:flex;
  align-items:center;

  gap:6px;

  margin-bottom:6px;
}


#ss-s2-parking .ss12-label-row label{

  margin:0;
}


#ss-s2-parking .ss12-input{

  min-height:48px;

  display:flex;
  align-items:stretch;

  overflow:hidden;

  border:1px solid var(--gold-line);
  border-radius:11px;

  background:var(--gold-soft);
}


#ss-s2-parking .ss12-input:focus-within{

  border-color:var(--gold);

  box-shadow:
    0 0 0 3px rgba(183,135,76,.08);
}


#ss-s2-parking .ss12-input input{

  flex:1 1 auto;

  width:100%;
  min-width:0;
  height:46px;

  padding:0 12px;

  border:0;
  outline:0;

  background:transparent;

  color:var(--dark);

  font-family:inherit;
  font-size:13px;
  font-weight:700;

  direction:ltr;
  text-align:right;
}


#ss-s2-parking .ss12-input > span{

  min-width:64px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 9px;

  border-right:
    1px solid rgba(183,135,76,.18);

  color:var(--muted);

  font-size:8.5px;

  white-space:nowrap;
}


/* =========================================================
   INFO
========================================================= */

#ss-s2-parking .ss12-info{

  position:relative;

  width:19px;
  height:19px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:0;

  border:1px solid var(--gold-line);
  border-radius:50%;

  background:#fff;

  color:var(--gold);

  font-family:Georgia,serif;
  font-size:10px;

  cursor:help;
}


#ss-s2-parking .ss12-tooltip{

  position:absolute;

  z-index:100;

  right:50%;
  bottom:calc(100% + 9px);

  width:270px;

  padding:10px 11px;

  border-radius:9px;

  background:var(--dark);

  color:#fff;

  font-family:inherit;
  font-size:9px;
  line-height:1.85;

  text-align:right;

  opacity:0;
  visibility:hidden;

  transform:
    translate(50%,4px);

  pointer-events:none;
}


#ss-s2-parking .ss12-info:hover .ss12-tooltip,
#ss-s2-parking .ss12-info:focus .ss12-tooltip{

  opacity:1;
  visibility:visible;

  transform:
    translate(50%,0);
}


/* =========================================================
   SUMMARY
========================================================= */

#ss-s2-parking .ss12-summary-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:9px;
}


#ss-s2-parking .ss12-summary-item{

  min-height:62px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:12px;

  padding:11px 12px;

  border:1px solid var(--fixed-line);
  border-radius:11px;

  background:var(--fixed);
}


#ss-s2-parking .ss12-summary-item.is-total{

  background:var(--fixed-strong);
}


#ss-s2-parking .ss12-summary-wide{

  grid-column:span 3;
}


#ss-s2-parking .ss12-summary-item span{

  color:var(--text);

  font-size:9.5px;
  font-weight:650;
}


#ss-s2-parking .ss12-summary-item strong{

  color:var(--dark);

  font-size:14px;
  font-weight:850;

  direction:ltr;
}


/* =========================================================
   STATUS
========================================================= */

#ss-s2-parking .ss12-status{

  margin-top:11px;

  padding:11px 13px;

  border-radius:10px;

  font-size:9.5px;
  font-weight:700;
  line-height:1.9;
}


#ss-s2-parking .ss12-status.is-good{

  color:var(--good);

  border:1px solid var(--good-line);

  background:var(--good-bg);
}


#ss-s2-parking .ss12-status.is-danger{

  color:var(--danger);

  border:1px solid var(--danger-line);

  background:var(--danger-bg);
}


/* =========================================================
   LEVEL LAYOUT
========================================================= */

#ss-s2-parking .ss12-levels{

  width:100%;
  max-width:620px;

  display:flex;
  flex-direction:column;

  gap:6px;
}


#ss-s2-parking .ss12-level{

  min-height:45px;

  display:grid;

  grid-template-columns:
    74px 1fr;

  align-items:center;

  overflow:hidden;

  border:1px solid var(--fixed-line);
  border-radius:10px;

  background:var(--fixed);
}


#ss-s2-parking .ss12-level-code{

  height:100%;

  display:flex;
  align-items:center;
  justify-content:center;

  border-left:1px solid #DCD8D2;

  font-size:10.5px;
  font-weight:850;

  direction:ltr;
}


#ss-s2-parking .ss12-level-label{

  padding:8px 12px;

  color:var(--text);

  font-size:9.5px;
  font-weight:650;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:900px){

  #ss-s2-parking .ss12-output-grid,
  #ss-s2-parking .ss12-fields,
  #ss-s2-parking .ss12-summary-grid{

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  #ss-s2-parking .ss12-summary-wide{

    grid-column:span 2;
  }

}


@media(max-width:620px){

  #ss-s2-parking .ss12-main-head{

    align-items:flex-start;

    min-height:auto;

    padding:15px 14px;
  }


  #ss-s2-parking .ss12-main-icon{

    width:44px;
    height:44px;

    flex-basis:44px;

    padding:6px;
  }


  #ss-s2-parking .ss12-main-icon img{

    width:32px;
    height:32px;
  }


  #ss-s2-parking .ss12-main-copy h3{

    font-size:16px;
  }


  #ss-s2-parking .ss12-card{

    padding:16px 14px;
  }


  #ss-s2-parking .ss12-output-grid,
  #ss-s2-parking .ss12-output-grid-2,
  #ss-s2-parking .ss12-fields,
  #ss-s2-parking .ss12-summary-grid{

    grid-template-columns:1fr;
  }


  #ss-s2-parking .ss12-summary-wide{

    grid-column:auto;
  }

}


@media(prefers-reduced-motion:reduce){

  #ss-s2-parking,
  #ss-s2-parking *{

    animation:none !important;
    transition:none !important;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 5
========================================================= */
/* =========================================================
   ROOT
========================================================= */

#ss-s2-cost-assumptions{

  --ss-gold:#B7874C;
  --ss-gold-line:#DAB889;
  --ss-gold-soft:#FBF5E9;

  --ss-dark:#4E4B4A;
  --ss-text:#746E69;
  --ss-muted:#958E88;

  --ss-line:#E8DFD5;

  width:100%;
  max-width:1120px;

  margin:0 auto 16px;

  color:var(--ss-dark);

  font-family:inherit;
}


/* hard gate */

#ss-s2-cost-assumptions[hidden],
#ss-s2-cost-assumptions [hidden]{
  display:none !important;
}


#ss-s2-cost-assumptions *,
#ss-s2-cost-assumptions *::before,
#ss-s2-cost-assumptions *::after{
  box-sizing:border-box;
}


/* =========================================================
   MAIN HEADER
========================================================= */

#ss-s2-cost-assumptions .ss13-main-head{

  position:relative;

  display:flex;
  align-items:center;

  gap:16px;

  min-height:96px;

  padding:18px 22px;

  margin-bottom:12px;

  overflow:hidden;

  border:1px solid var(--ss-line);
  border-radius:16px;

  background:#fff;
}


/* bottom gold line */

#ss-s2-cost-assumptions .ss13-main-head::after{

  content:"";

  position:absolute;

  right:24px;
  bottom:0;

  width:120px;
  height:2px;

  border-radius:999px 999px 0 0;

  background:
    linear-gradient(
      90deg,
      rgba(183,135,76,0),
      rgba(183,135,76,.45),
      var(--ss-gold)
    );
}


/* PNG HOLDER */

#ss-s2-cost-assumptions .ss13-main-icon{

  width:54px;
  height:54px;

  flex:0 0 54px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:7px;

  border:1px solid var(--ss-gold-line);
  border-radius:14px;

  background:var(--ss-gold-soft);
}


#ss-s2-cost-assumptions .ss13-main-icon img{

  display:block;

  width:40px;
  height:40px;

  object-fit:contain;
}


#ss-s2-cost-assumptions .ss13-main-icon img[src=""],
#ss-s2-cost-assumptions .ss13-main-icon img:not([src]){
  visibility:hidden;
}


/* HEADER COPY */

#ss-s2-cost-assumptions .ss13-main-copy{

  min-width:0;

  display:flex;
  align-items:stretch;

  gap:11px;
}


#ss-s2-cost-assumptions .ss13-main-accent{

  width:3px;

  flex:0 0 3px;

  border-radius:999px;

  background:var(--ss-gold);
}


#ss-s2-cost-assumptions .ss13-main-copy h3{

  margin:0 0 3px;

  color:var(--ss-dark);

  font-size:18px;
  font-weight:850;
  line-height:1.7;
}


#ss-s2-cost-assumptions .ss13-main-copy p{

  margin:0;

  color:var(--ss-text);

  font-size:10px;
  line-height:1.9;
}


/* =========================================================
   CARDS
========================================================= */

#ss-s2-cost-assumptions .ss13-card{

  position:relative;

  padding:18px 20px 20px;

  margin-bottom:12px;

  border:1px solid var(--ss-line);
  border-radius:15px;

  background:#fff;
}


/* cream separator */

#ss-s2-cost-assumptions .ss13-card::before{

  content:"";

  position:absolute;

  top:0;
  right:20px;

  width:52px;
  height:2px;

  border-radius:0 0 999px 999px;

  background:var(--ss-gold-line);
}


#ss-s2-cost-assumptions .ss13-card-head{

  padding-bottom:12px;
  margin-bottom:14px;

  border-bottom:1px solid var(--ss-line);
}


#ss-s2-cost-assumptions .ss13-card-head h4{

  margin:0;

  color:var(--ss-dark);

  font-size:14px;
  font-weight:800;
  line-height:1.7;
}


/* =========================================================
   GRID
========================================================= */

#ss-s2-cost-assumptions .ss13-fields{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:14px;
}


#ss-s2-cost-assumptions .ss13-fields--2{

  grid-template-columns:
    repeat(2,minmax(0,1fr));
}


/* =========================================================
   FIELD
========================================================= */

#ss-s2-cost-assumptions .ss13-field{
  min-width:0;
}


#ss-s2-cost-assumptions .ss13-field label{

  display:block;

  margin-bottom:6px;

  color:var(--ss-dark);

  font-size:10.5px;
  font-weight:700;
  line-height:1.7;
}


/* =========================================================
   CONTROL

   Cream:
   transferred/default + editable
========================================================= */

#ss-s2-cost-assumptions .ss13-control{

  min-height:48px;

  display:flex;
  align-items:stretch;

  overflow:hidden;

  border-radius:11px;
}


#ss-s2-cost-assumptions .ss13-control.is-default{

  border:1px solid var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-cost-assumptions .ss13-control:focus-within{

  border-color:var(--ss-gold);

  box-shadow:
    0 0 0 3px rgba(183,135,76,.08);
}


#ss-s2-cost-assumptions .ss13-control input{

  flex:1 1 auto;

  width:100%;
  min-width:0;
  height:46px;

  padding:0 12px;

  border:0;
  outline:0;

  background:transparent;

  color:var(--ss-dark);

  font-family:inherit;
  font-size:13px;
  font-weight:700;

  direction:ltr;
  text-align:right;

  font-variant-numeric:
    tabular-nums;
}


#ss-s2-cost-assumptions .ss13-control > span{

  min-width:64px;

  flex:0 0 auto;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 9px;

  border-right:
    1px solid rgba(183,135,76,.15);

  color:var(--ss-muted);

  font-size:8.5px;

  white-space:nowrap;
}


/* =========================================================
   ENTER MOTION
========================================================= */

#ss-s2-cost-assumptions.is-entering{

  animation:
    ss13Enter
    330ms
    cubic-bezier(.22,.8,.3,1)
    both;
}


@keyframes ss13Enter{

  from{
    opacity:0;
    transform:translateY(5px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

  #ss-s2-cost-assumptions .ss13-fields{

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:620px){

  #ss-s2-cost-assumptions .ss13-main-head{

    min-height:auto;

    align-items:flex-start;

    padding:15px 14px;
  }


  #ss-s2-cost-assumptions .ss13-main-icon{

    width:44px;
    height:44px;

    flex-basis:44px;

    padding:6px;

    border-radius:12px;
  }


  #ss-s2-cost-assumptions .ss13-main-icon img{

    width:32px;
    height:32px;
  }


  #ss-s2-cost-assumptions .ss13-main-copy h3{
    font-size:16px;
  }


  #ss-s2-cost-assumptions .ss13-card{
    padding:16px 14px;
  }


  #ss-s2-cost-assumptions .ss13-fields,
  #ss-s2-cost-assumptions .ss13-fields--2{

    grid-template-columns:1fr;
  }


  #ss-s2-cost-assumptions .ss13-control > span{

    min-width:58px;

    font-size:8px;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

  #ss-s2-cost-assumptions,
  #ss-s2-cost-assumptions *{

    animation:none !important;
    transition:none !important;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 6
========================================================= */
/* =========================================================
   ROOT
========================================================= */

#ss-s2-calculate-wrap{

  --ss14-gold:#B7874C;
  --ss14-gold-dark:#A6753B;
  --ss14-gold-soft:#FBF5E9;

  --ss14-dark:#4E4B4A;
  --ss14-text:#746E69;
  --ss14-muted:#958E88;

  --ss14-line:#E8DFD5;

  --ss14-error:#A8564F;
  --ss14-error-soft:#FCF4F2;

  width:100%;
  max-width:1120px;

  margin:18px auto 22px;

  font-family:inherit;
}


#ss-s2-calculate-wrap[hidden],
#ss-s2-calculate-wrap [hidden]{
  display:none !important;
}


#ss-s2-calculate-wrap *,
#ss-s2-calculate-wrap *::before,
#ss-s2-calculate-wrap *::after{
  box-sizing:border-box;
}


/* =========================================================
   MAIN BUTTON
========================================================= */

#ss-s2-calculate-wrap .ss14-calculate{

  width:100%;
  min-height:54px;

  display:flex;
  align-items:center;
  justify-content:center;

  gap:10px;

  padding:13px 20px;

  border:1px solid var(--ss14-gold);
  border-radius:12px;

  background:var(--ss14-gold);

  color:#fff;

  font-family:inherit;

  cursor:pointer;

  box-shadow:none;

  transition:
    background 150ms ease,
    border-color 150ms ease,
    transform 150ms ease;
}


#ss-s2-calculate-wrap .ss14-calculate:hover{

  background:var(--ss14-gold-dark);

  border-color:var(--ss14-gold-dark);
}


#ss-s2-calculate-wrap .ss14-calculate:active{

  transform:translateY(1px);
}


#ss-s2-calculate-wrap .ss14-calculate:focus-visible{

  outline:none;

  box-shadow:
    0 0 0 3px rgba(183,135,76,.16);
}


#ss-s2-calculate-wrap .ss14-calculate-text{

  font-size:13px;
  font-weight:800;
  line-height:1.8;
}


#ss-s2-calculate-wrap .ss14-calculate-icon{

  font-size:18px;
  line-height:1;
}


/* =========================================================
   DIALOG
========================================================= */

#ss-s2-calculate-wrap .ss14-dialog{

  position:fixed;

  inset:0;

  z-index:999999;
}


#ss-s2-calculate-wrap .ss14-dialog-backdrop{

  position:absolute;

  inset:0;

  background:
    rgba(55,50,47,.34);

  backdrop-filter:
    blur(2px);
}


#ss-s2-calculate-wrap .ss14-dialog-panel{

  position:absolute;

  top:50%;
  left:50%;

  width:
    min(
      calc(100% - 32px),
      520px
    );

  max-height:
    calc(100vh - 50px);

  overflow:auto;

  transform:
    translate(-50%,-50%);

  padding:28px 26px 22px;

  border:1px solid var(--ss14-line);
  border-radius:18px;

  background:#fff;

  color:var(--ss14-dark);

  box-shadow:
    0 18px 55px rgba(55,48,43,.15);
}


/* close X */

#ss-s2-calculate-wrap .ss14-dialog-x{

  position:absolute;

  top:12px;
  left:14px;

  width:32px;
  height:32px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0;

  border:0;

  background:transparent;

  color:var(--ss14-muted);

  font-family:inherit;
  font-size:23px;
  font-weight:300;
  line-height:1;

  cursor:pointer;
}


/* warning mark */

#ss-s2-calculate-wrap .ss14-dialog-mark{

  width:38px;
  height:38px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin:0 0 13px;

  border-radius:50%;

  background:var(--ss14-error-soft);

  color:var(--ss14-error);

  font-size:18px;
  font-weight:800;
}


#ss-s2-calculate-wrap .ss14-dialog-panel h3{

  margin:0 0 5px;

  color:var(--ss14-dark);

  font-size:16px;
  font-weight:850;
  line-height:1.8;
}


#ss-s2-calculate-wrap .ss14-dialog-panel > p{

  margin:0 0 18px;

  color:var(--ss14-text);

  font-size:10px;
  line-height:1.9;
}


/* =========================================================
   ERROR LIST
========================================================= */

#ss-s2-calculate-wrap .ss14-error-list{

  display:flex;
  flex-direction:column;

  gap:7px;

  margin-bottom:20px;
}


#ss-s2-calculate-wrap .ss14-error-item{

  width:100%;

  display:flex;
  align-items:center;

  gap:9px;

  padding:10px 12px;

  border:1px solid #EFE4E0;
  border-radius:10px;

  background:#FCFAF9;

  color:var(--ss14-dark);

  font-family:inherit;
  font-size:10px;
  font-weight:600;
  line-height:1.8;

  text-align:right;

  cursor:pointer;
}


#ss-s2-calculate-wrap .ss14-error-item:hover{

  border-color:#DEC3BC;

  background:var(--ss14-error-soft);
}


#ss-s2-calculate-wrap .ss14-error-dot{

  width:6px;
  height:6px;

  flex:0 0 6px;

  border-radius:50%;

  background:var(--ss14-error);
}


/* =========================================================
   CLOSE BUTTON
========================================================= */

#ss-s2-calculate-wrap .ss14-dialog-close{

  width:100%;
  min-height:44px;

  padding:10px 14px;

  border:1px solid var(--ss14-gold);
  border-radius:10px;

  background:var(--ss14-gold-soft);

  color:var(--ss14-gold-dark);

  font-family:inherit;
  font-size:11px;
  font-weight:800;

  cursor:pointer;
}


/* =========================================================
   INVALID TARGET HIGHLIGHT
========================================================= */

.ss14-invalid-target{

  outline:
    2px solid rgba(168,86,79,.52) !important;

  outline-offset:
    2px !important;

  border-radius:
    10px;
}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:620px){

  #ss-s2-calculate-wrap{

    margin-top:14px;
  }


  #ss-s2-calculate-wrap .ss14-calculate{

    min-height:52px;

    padding:
      12px 15px;
  }


  #ss-s2-calculate-wrap
  .ss14-calculate-text{

    font-size:12px;
  }


  #ss-s2-calculate-wrap
  .ss14-dialog-panel{

    width:
      calc(100% - 24px);

    padding:
      25px 18px 18px;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

  #ss-s2-calculate-wrap *,
  #ss-s2-calculate-wrap *::before,
  #ss-s2-calculate-wrap *::after{

    scroll-behavior:auto !important;

    transition:none !important;
  }

}

/* =========================================================
   SOURCE STYLE BLOCK 7
========================================================= */
/* =========================================================
   ROOT
========================================================= */

#ss-s2-result{

  --ss-gold:#B7874C;
  --ss-gold-dark:#9B6E38;
  --ss-gold-line:#DAB889;
  --ss-gold-soft:#FBF5E9;

  --ss-dark:#4E4B4A;
  --ss-text:#675F59;
  --ss-muted:#7F7771;

  --ss-line:#E8DFD5;

  --ss-fixed:#F2F1EF;
  --ss-fixed-line:#DEDAD5;

  --ss-good:#52745B;
  --ss-warn:#A57432;
  --ss-bad:#985A50;

  width:100%;
  max-width:1120px;

  margin:0 auto 18px;

  color:var(--ss-dark);

  font-family:inherit;
}


#ss-s2-result[hidden],
#ss-s2-result [hidden]{
  display:none !important;
}


#ss-s2-result *,
#ss-s2-result *::before,
#ss-s2-result *::after{
  box-sizing:border-box;
}


/* =========================================================
   HEADER
========================================================= */

#ss-s2-result .ss15-main-head{

  position:relative;

  min-height:96px;

  display:flex;
  align-items:center;

  padding:18px 22px;

  margin-bottom:12px;

  overflow:hidden;

  border:1px solid var(--ss-line);
  border-radius:16px;

  background:#fff;
}


#ss-s2-result .ss15-main-head::after{

  content:"";

  position:absolute;

  right:24px;
  bottom:0;

  width:120px;
  height:2px;

  border-radius:999px 999px 0 0;

  background:
    linear-gradient(
      90deg,
      rgba(183,135,76,0),
      rgba(183,135,76,.45),
      var(--ss-gold)
    );
}


#ss-s2-result .ss15-main-copy{

  min-width:0;

  display:flex;
  align-items:center;

  gap:12px;
}


#ss-s2-result .ss15-main-accent{

  width:3px;
  min-height:52px;

  flex:0 0 3px;

  border-radius:999px;

  background:var(--ss-gold);
}


#ss-s2-result .ss15-head-mark{

  width:54px;
  height:54px;

  flex:0 0 54px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:6px;

  border:1px solid var(--ss-gold-line);
  border-radius:14px;

  background:var(--ss-gold-soft);
}


#ss-s2-result .ss15-head-mark img{

  display:block;

  width:44px;
  height:44px;

  object-fit:contain;
}


#ss-s2-result .ss15-head-mark img[src=""],
#ss-s2-result .ss15-head-mark img:not([src]){
  visibility:hidden;
}


#ss-s2-result .ss15-main-copy h3{

  margin:0 0 4px;

  font-size:18px;
  font-weight:850;
  line-height:1.7;
}


#ss-s2-result .ss15-main-copy p{

  margin:0;

  color:var(--ss-text);

  font-size:10.5px;
  line-height:1.9;
}


/* =========================================================
   GENERAL CARD
========================================================= */

#ss-s2-result .ss15-card{

  position:relative;

  padding:18px 20px 20px;

  margin-bottom:12px;

  border:1px solid var(--ss-line);
  border-radius:15px;

  background:#fff;
}


#ss-s2-result .ss15-card::before{

  content:"";

  position:absolute;

  top:0;
  right:20px;

  width:52px;
  height:2px;

  background:var(--ss-gold-line);

  border-radius:0 0 999px 999px;
}


#ss-s2-result .ss15-card-head{

  display:flex;
  align-items:flex-start;
  justify-content:space-between;

  gap:12px;

  padding-bottom:12px;
  margin-bottom:14px;

  border-bottom:1px solid var(--ss-line);
}


#ss-s2-result .ss15-card-head h4{

  margin:0 0 4px;

  font-size:15px;
  font-weight:850;
  line-height:1.7;
}


#ss-s2-result .ss15-card-head p{

  max-width:820px;

  margin:0;

  color:var(--ss-text);

  font-size:11px;
  line-height:1.95;
}



#ss-s2-result .ss15-cost-head h4{

  font-size:17px;
  font-weight:900;
}


#ss-s2-result .ss15-cost-head p{

  font-size:11.5px;
  line-height:2;
}

/* =========================================================
   SUMMARY
========================================================= */

#ss-s2-result .ss15-summary-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-result .ss15-metric{

  min-width:0;
  min-height:112px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:15px 16px;

  border:1px solid var(--ss-fixed-line);
  border-radius:12px;

  background:var(--ss-fixed);
}


#ss-s2-result .ss15-metric.is-accent{

  border-color:var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-result .ss15-metric > span{

  margin-bottom:15px;

  font-size:9px;
  font-weight:760;
}


#ss-s2-result .ss15-metric strong{

  display:block;

  font-size:21px;
  font-weight:850;
  line-height:1.35;

  direction:ltr;
  text-align:right;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-metric small{

  margin-top:5px;

  color:var(--ss-muted);

  font-size:8px;
}


/* =========================================================
   STATEMENT
========================================================= */

#ss-s2-result .ss15-statement{

  overflow:hidden;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#fff;
}


#ss-s2-result .ss15-row{

  min-height:47px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:16px;

  padding:10px 13px;

  border-bottom:1px solid var(--ss-line);
}


#ss-s2-result .ss15-row:last-child{
  border-bottom:0;
}


#ss-s2-result .ss15-row > span{

  font-size:10.8px;
  font-weight:720;
  line-height:1.8;
}


#ss-s2-result .ss15-row strong{

  font-size:12px;
  font-weight:850;

  direction:ltr;
  text-align:left;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-row.is-total{

  background:var(--ss-fixed);
}


#ss-s2-result .ss15-row.is-total > span,
#ss-s2-result .ss15-row.is-total strong{
  font-weight:850;
}


/* =========================================================
   COST LAYOUT / DONUT / INLINE SALES
========================================================= */

#ss-s2-result .ss15-cost-layout{

  display:grid;

  grid-template-columns:
    minmax(0,1.45fr)
    minmax(300px,.85fr);

  gap:16px;

  align-items:start;
}


#ss-s2-result .ss15-cost-statement,
#ss-s2-result .ss15-cost-visual{
  min-width:0;
}


#ss-s2-result .ss15-cost-visual{

  display:grid;

  gap:12px;
}


#ss-s2-result .ss15-cost-chart,
#ss-s2-result .ss15-sales-inline{

  padding:14px;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#FAF8F5;
}


#ss-s2-result .ss15-inline-head{

  margin-bottom:12px;
}


#ss-s2-result .ss15-inline-head > strong{

  display:block;

  margin-bottom:4px;

  font-size:12.5px;
  font-weight:880;
}


#ss-s2-result .ss15-inline-head > span{

  display:block;

  color:var(--ss-text);

  font-size:10.8px;
  line-height:1.95;
}


#ss-s2-result .ss15-donut-wrap{

  display:grid;

  grid-template-columns:
    150px minmax(0,1fr);

  gap:14px;

  align-items:center;
}


#ss-s2-result .ss15-donut{

  --p-land:0%;
  --p-build:0%;

  position:relative;

  width:150px;
  height:150px;

  display:grid;
  place-items:center;

  margin:0 auto;

  border-radius:50%;

  background:
    conic-gradient(
      var(--ss-gold) 0 var(--p-land),
      #7B746E var(--p-land) var(--p-build),
      #D8C8B3 var(--p-build) 100%
    );
}


#ss-s2-result .ss15-donut::after{

  content:"";

  position:absolute;

  inset:28px;

  border-radius:50%;

  background:#FAF8F5;

  box-shadow:
    0 0 0 1px rgba(232,223,213,.85);
}


#ss-s2-result .ss15-donut-center{

  position:relative;
  z-index:1;

  width:88px;

  text-align:center;
}


#ss-s2-result .ss15-donut-center span{

  display:block;

  margin-bottom:4px;

  color:var(--ss-text);

  font-size:8.5px;
}


#ss-s2-result .ss15-donut-center strong{

  display:block;

  font-size:10px;
  font-weight:850;

  direction:ltr;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-donut-legend{

  display:grid;

  gap:9px;
}


#ss-s2-result .ss15-donut-legend > div{

  display:grid;

  grid-template-columns:
    9px minmax(0,1fr) auto;

  gap:7px;

  align-items:center;
}


#ss-s2-result .ss15-donut-legend i{

  width:8px;
  height:8px;

  display:block;

  border-radius:50%;
}


#ss-s2-result .ss15-donut-legend i.is-land{
  background:var(--ss-gold);
}


#ss-s2-result .ss15-donut-legend i.is-build{
  background:#7B746E;
}


#ss-s2-result .ss15-donut-legend i.is-extra{
  background:#D8C8B3;
}


#ss-s2-result .ss15-donut-legend span{

  color:var(--ss-text);

  font-size:9.5px;
}


#ss-s2-result .ss15-donut-legend strong{

  font-size:9.5px;
  font-weight:850;

  direction:ltr;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-sales-inline .ss15-statement{
  background:#fff;
}


/* =========================================================
   PROFITABILITY
========================================================= */

#ss-s2-result .ss15-profit-grid{

  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px;
}


#ss-s2-result .ss15-profit-metric{

  min-height:142px;

  padding:16px;

  border:1px solid var(--ss-fixed-line);
  border-radius:12px;

  background:var(--ss-fixed);
}


#ss-s2-result .ss15-profit-metric > span{

  display:block;

  margin-bottom:16px;

  font-size:9px;
  font-weight:780;
}


#ss-s2-result .ss15-profit-metric strong{

  display:block;

  margin-bottom:12px;

  font-size:24px;
  font-weight:850;

  direction:ltr;
  text-align:right;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-profit-metric p{

  margin:0;

  color:var(--ss-text);

  font-size:10.5px;
  line-height:1.95;
}


#ss-s2-result .ss15-evaluation{

  padding:17px 18px;

  margin-top:10px;

  border:1px solid var(--ss-gold-line);
  border-radius:12px;

  background:var(--ss-gold-soft);
}


#ss-s2-result .ss15-evaluation-kicker{

  display:block;

  margin-bottom:7px;

  color:var(--ss-text);

  font-size:8.5px;
  font-weight:760;
}


#ss-s2-result .ss15-evaluation > strong{

  display:block;

  margin-bottom:8px;

  font-size:20px;
  font-weight:900;
  line-height:1.5;
}


#ss-s2-result .ss15-evaluation > p{

  max-width:940px;

  margin:0;

  color:var(--ss-dark);

  font-size:11.5px;
  font-weight:620;
  line-height:2;
}


/* =========================================================
   TOLERANCE
========================================================= */

#ss-s2-result .ss15-tolerance-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-result .ss15-soft-card{

  min-height:150px;

  padding:15px;

  border:1px solid var(--ss-fixed-line);
  border-radius:12px;

  background:var(--ss-fixed);
}


#ss-s2-result .ss15-soft-card > span{

  display:block;

  margin-bottom:14px;

  font-size:9px;
  font-weight:760;
}


#ss-s2-result .ss15-soft-card strong{

  display:block;

  margin-bottom:4px;

  font-size:18px;
  font-weight:850;

  direction:ltr;
  text-align:right;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-soft-card small{

  display:block;

  margin-bottom:9px;

  color:var(--ss-muted);

  font-size:7.5px;
}


#ss-s2-result .ss15-soft-card p{

  margin:9px 0 0;

  color:var(--ss-text);

  font-size:10px;
  line-height:1.95;
}


/* =========================================================
   STRESS TEST
========================================================= */

#ss-s2-result .ss15-stress-grid{

  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px;
}


#ss-s2-result .ss15-stress-card{

  min-height:220px;

  display:flex;
  flex-direction:column;

  padding:14px;

  border:1px solid var(--ss-fixed-line);
  border-radius:12px;

  background:var(--ss-fixed);
}


#ss-s2-result .ss15-stress-card.is-combined{

  border-color:var(--ss-gold-line);

  background:var(--ss-gold-soft);
}


#ss-s2-result .ss15-stress-title{

  display:block;

  margin-bottom:9px;

  font-size:12px;
  font-weight:900;
  line-height:1.65;
}


#ss-s2-result .ss15-stress-desc{

  min-height:92px;

  margin:0 0 14px;

  color:var(--ss-text);

  font-size:10.8px;
  font-weight:520;
  line-height:2;
}


#ss-s2-result .ss15-stress-line{

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:8px;

  padding:8px 0;

  margin-top:auto;

  border-top:1px solid rgba(116,110,105,.12);
}


#ss-s2-result
.ss15-stress-line + .ss15-stress-line{
  margin-top:0;
}


#ss-s2-result .ss15-stress-line span{

  font-size:10.5px;
  font-weight:650;
}


#ss-s2-result .ss15-stress-line strong{

  font-size:12px;
  font-weight:900;

  direction:ltr;
  text-align:left;

  font-variant-numeric:tabular-nums;
}


/* =========================================================
   STRESS POC CHART
========================================================= */

#ss-s2-result .ss15-stress-chart-wrap{

  margin-top:14px;

  padding:14px;

  border:1px solid var(--ss-line);
  border-radius:12px;

  background:#FAF8F5;
}


#ss-s2-result .ss15-stress-chart{

  --ss-zero-pos:0%;
  --ss-benchmark-pos:70%;

  min-width:0;
}


#ss-s2-result .ss15-stress-guide{

  position:relative;

  height:34px;

  /*
    RTL layout:
    scenario labels are on the RIGHT,
    chart tracks are on the LEFT.
    This right margin aligns the guide exactly with the tracks.
  */
  margin:0 178px 8px 0;

  direction:ltr;
}


#ss-s2-result .ss15-stress-guide > span{

  position:absolute;

  top:0;

  z-index:3;

  white-space:nowrap;
}


#ss-s2-result .ss15-zero-guide{

  left:var(--ss-zero-pos);

  padding:4px 7px;

  border:1px solid rgba(152,90,80,.25);
  border-radius:999px;

  background:#fff;

  color:var(--ss-bad);

  font-size:9px;
  font-weight:780;

  transform:translateX(-50%);
}


#ss-s2-result .ss15-zero-guide[hidden]{
  display:none !important;
}


#ss-s2-result .ss15-benchmark-guide{

  left:var(--ss-benchmark-pos);

  padding:5px 8px;

  border:1px solid var(--ss-gold-line);
  border-radius:999px;

  background:var(--ss-gold-soft);

  color:var(--ss-gold-dark);

  font-size:9.5px;
  font-weight:850;

  transform:translateX(-50%);
}


#ss-s2-result .ss15-stress-chart-rows{

  display:grid;

  gap:9px;
}


#ss-s2-result .ss15-stress-chart-row{

  display:grid;

  grid-template-columns:
    164px minmax(0,1fr);

  gap:14px;

  align-items:center;
}


#ss-s2-result .ss15-stress-chart-label{

  min-width:0;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:8px;
}


#ss-s2-result .ss15-stress-chart-label span{

  min-width:0;

  color:var(--ss-text);

  font-size:10.5px;
  font-weight:760;
  line-height:1.7;
}


#ss-s2-result .ss15-stress-chart-label strong{

  flex:0 0 auto;

  font-size:11.5px;
  font-weight:900;

  direction:ltr;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-stress-track{

  position:relative;

  height:26px;

  overflow:hidden;

  border:1px solid var(--ss-fixed-line);
  border-radius:7px;

  background:#fff;
}


#ss-s2-result .ss15-zero-line,
#ss-s2-result .ss15-benchmark-line{

  position:absolute;

  top:0;
  bottom:0;

  z-index:2;

  width:1px;

  pointer-events:none;
}


#ss-s2-result .ss15-zero-line{

  left:var(--ss-zero-pos);

  background:rgba(78,75,74,.38);
}


#ss-s2-result .ss15-benchmark-line{

  left:var(--ss-benchmark-pos);

  width:2px;

  background:var(--ss-gold);

  box-shadow:
    0 0 0 1px rgba(183,135,76,.08);
}


#ss-s2-result .ss15-stress-bar{

  position:absolute;

  top:6px;

  z-index:1;

  height:12px;

  border-radius:999px;

  background:#756E68;
}


#ss-s2-result .ss15-stress-bar.is-negative{
  background:var(--ss-bad);
}


#ss-s2-result
.ss15-stress-chart-row.is-combined
.ss15-stress-bar:not(.is-negative){
  background:var(--ss-gold);
}


/* =========================================================
   RESILIENCE
========================================================= */

#ss-s2-result .ss15-resilience-body{

  padding:17px 18px;

  border:1px solid var(--ss-gold-line);
  border-radius:12px;

  background:var(--ss-gold-soft);
}


#ss-s2-result .ss15-resilience-kicker{

  display:block;

  margin-bottom:7px;

  color:var(--ss-text);

  font-size:8.5px;
  font-weight:760;
}


#ss-s2-result .ss15-resilience-body > strong{

  display:block;

  margin-bottom:8px;

  font-size:20px;
  font-weight:900;
}


#ss-s2-result .ss15-resilience-body > p{

  max-width:960px;

  margin:0;

  color:var(--ss-dark);

  font-size:11.5px;
  font-weight:620;
  line-height:2;
}


/* =========================================================
   CHART SLOTS
========================================================= */

#ss-s2-result .ss15-chart-slot{

  margin-top:14px;
}


/* =========================================================
   PROFESSIONAL ANALYSIS PREVIEW + CTA
========================================================= */

#ss-s2-result .ss15-pro-preview{

  position:relative;

  padding:20px;

  overflow:hidden;

  border:1px solid var(--ss-line);
  border-radius:16px;

  background:#fff;
}


#ss-s2-result .ss15-pro-preview::before{

  content:"";

  position:absolute;

  top:-1px;
  right:22px;

  width:72px;
  height:2px;

  background:var(--ss-gold);
}


#ss-s2-result .ss15-pro-head{

  margin-bottom:15px;
}


#ss-s2-result .ss15-pro-kicker{

  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-height:23px;

  margin-bottom:6px;

  padding:2px 9px;

  border:1px solid var(--ss-gold-line);
  border-radius:999px;

  background:var(--ss-gold-soft);

  color:var(--ss-gold-dark);

  font-size:9px;
  font-weight:800;
}


#ss-s2-result .ss15-pro-head h4{

  margin:0 0 5px;

  color:var(--ss-dark);

  font-size:16px;
  font-weight:900;
  line-height:1.75;
}


#ss-s2-result .ss15-pro-head p{

  max-width:930px;

  margin:0;

  color:var(--ss-text);

  font-size:11px;
  font-weight:520;
  line-height:2;
}


#ss-s2-result .ss15-pro-grid{

  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:10px;
}


#ss-s2-result .ss15-pro-card{

  min-width:0;

  display:grid;

  grid-template-columns:
    32px minmax(0,1fr);

  gap:10px;

  align-items:start;

  min-height:140px;

  padding:13px;

  border:1px solid #E8DED3;
  border-radius:12px;

  background:#FCF9F6;
}


#ss-s2-result .ss15-pro-num{

  width:29px;
  height:29px;

  display:flex;

  align-items:center;
  justify-content:center;

  border:1px solid rgba(183,135,76,.28);
  border-radius:9px;

  background:#fff;

  color:var(--ss-gold);

  font-size:9px;
  font-weight:850;

  direction:ltr;

  font-variant-numeric:tabular-nums;
}


#ss-s2-result .ss15-pro-card strong{

  display:block;

  margin:1px 0 6px;

  color:var(--ss-dark);

  font-size:11.5px;
  font-weight:880;
  line-height:1.8;
}


#ss-s2-result .ss15-pro-card p{

  margin:0;

  color:var(--ss-text);

  font-size:10.2px;
  font-weight:500;
  line-height:1.95;
}


#ss-s2-result .ss15-pro-bottom{

  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:18px;

  margin-top:13px;

  padding:13px 14px;

  border:1px solid rgba(183,135,76,.20);
  border-radius:12px;

  background:rgba(183,135,76,.045);
}


#ss-s2-result .ss15-pro-value{

  min-width:0;
}


#ss-s2-result .ss15-pro-value strong{

  display:block;

  margin-bottom:4px;

  color:var(--ss-dark);

  font-size:11.5px;
  font-weight:850;
  line-height:1.8;
}


#ss-s2-result .ss15-pro-value span{

  display:block;

  color:var(--ss-text);

  font-size:10.3px;
  line-height:1.9;
}


#ss-s2-result .ss15-next-button{

  min-width:250px;
  min-height:56px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  gap:9px;

  flex:0 0 auto;

  padding:0 18px;

  border:1px solid var(--ss-gold-dark);
  border-radius:13px;

  background:var(--ss-gold);

  color:#fff;

  font-family:inherit;
  font-size:11.5px;
  font-weight:880;

  cursor:pointer;

  transition:
    background .18s ease,
    transform .18s ease;
}


#ss-s2-result .ss15-next-button:hover{

  background:var(--ss-gold-dark);

  transform:translateY(-1px);
}


#ss-s2-result .ss15-next-icon{

  width:30px;
  height:30px;

  display:flex;

  align-items:center;
  justify-content:center;

  flex:0 0 30px;
}


#ss-s2-result .ss15-next-icon svg{

  display:block;

  width:22px;
  height:22px;

  fill:none;

  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}


#ss-s2-result .ss15-next-arrow{

  font-size:14px;
  line-height:1;
}


/* =========================================================
   SS-14 CALCULATE BUTTON
   Visual compatibility with the free-stage main CTA.

   No behavior is changed here.
========================================================= */

#ss-s2-calculate{

  width:100%;
  min-height:56px;

  display:flex;
  align-items:center;
  justify-content:center;

  gap:9px;

  padding:0 20px;

  border:1px solid #9B6E38 !important;
  border-radius:13px !important;

  background:#B7874C !important;

  color:#fff !important;

  font-family:inherit !important;
  font-size:12px !important;
  font-weight:850 !important;
  line-height:1.4;

  box-shadow:none !important;

  cursor:pointer;
}


#ss-s2-calculate:hover{
  background:#9B6E38 !important;
}


#ss-s2-calculate-wrap p{
  font-size:10.5px !important;
  line-height:1.9 !important;
}


#ss-s2-calculate-wrap small{
  font-size:9.5px !important;
  line-height:1.8 !important;
}


/* =========================================================
   STATE COLORS
========================================================= */

#ss-s2-result[data-profit-state="loss"]
#ss-s2-result-profit-card,

#ss-s2-result[data-rating-state="loss"]
.ss15-evaluation{
  border-color:rgba(152,90,80,.40);
  background:rgba(152,90,80,.08);
}


#ss-s2-result[data-rating-state="good"]
.ss15-evaluation,

#ss-s2-result[data-resilience="high"]
.ss15-resilience-body{
  border-color:rgba(82,116,91,.38);
  background:rgba(82,116,91,.07);
}


#ss-s2-result[data-resilience="low"]
.ss15-resilience-body{
  border-color:rgba(152,90,80,.40);
  background:rgba(152,90,80,.08);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

  #ss-s2-result .ss15-summary-grid,
  #ss-s2-result .ss15-tolerance-grid{
    grid-template-columns:1fr;
  }


  #ss-s2-result .ss15-stress-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  #ss-s2-result .ss15-cost-layout{
    grid-template-columns:1fr;
  }


  #ss-s2-result .ss15-cost-visual{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }



  #ss-s2-result .ss15-stress-guide{
    margin-right:148px;
  }


  #ss-s2-result .ss15-stress-chart-row{
    grid-template-columns:
      134px minmax(0,1fr);
  }


  #ss-s2-result .ss15-pro-grid{
    grid-template-columns:1fr;
  }


  #ss-s2-result .ss15-pro-card{
    min-height:0;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:620px){

  #ss-s2-result .ss15-main-head{
    min-height:auto;
    padding:15px 14px;
  }


  #ss-s2-result .ss15-main-accent{
    min-height:46px;
  }


  #ss-s2-result .ss15-head-mark{

    width:44px;
    height:44px;

    flex-basis:44px;

    border-radius:12px;
  }


  #ss-s2-result .ss15-head-mark img{
    width:34px;
    height:34px;
  }




  #ss-s2-result .ss15-main-copy h3{
    font-size:16px;
  }


  #ss-s2-result .ss15-card{
    padding:16px 14px;
  }


  #ss-s2-result .ss15-profit-grid,
  #ss-s2-result .ss15-stress-grid,
  #ss-s2-result .ss15-cost-visual{
    grid-template-columns:1fr;
  }


  #ss-s2-result .ss15-donut-wrap{
    grid-template-columns:1fr;
  }



  #ss-s2-result .ss15-stress-guide{
    height:38px;
    margin:0 0 9px;
  }


  #ss-s2-result .ss15-benchmark-guide{
    font-size:9px;
  }


  #ss-s2-result .ss15-stress-chart-row{
    grid-template-columns:1fr;
    gap:6px;
  }


  #ss-s2-result .ss15-stress-chart-label{
    padding:0 1px;
  }


  #ss-s2-result .ss15-stress-desc{
    min-height:auto;
  }


  #ss-s2-result .ss15-pro-preview{
    padding:16px 14px;
  }


  #ss-s2-result .ss15-pro-head h4{
    font-size:14.5px;
  }


  #ss-s2-result .ss15-pro-head p{
    font-size:10.5px;
  }


  #ss-s2-result .ss15-pro-grid{
    grid-template-columns:1fr;
  }


  #ss-s2-result .ss15-pro-card{
    min-height:0;
  }


  #ss-s2-result .ss15-pro-bottom{

    align-items:stretch;
    flex-direction:column;
  }


  #ss-s2-result .ss15-next-button{

    width:100%;
    min-width:0;
  }


  #ss-s2-result .ss15-metric strong{
    font-size:18px;
  }


  #ss-s2-result .ss15-row{

    align-items:flex-start;
    flex-direction:column;

    gap:5px;
  }


  #ss-s2-result .ss15-row strong{
    width:100%;
    text-align:right;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

  #ss-s2-result,
  #ss-s2-result *{
    scroll-behavior:auto !important;
    transition:none !important;
    animation:none !important;
  }

}