/* V32: two-step form, responsive manse table, actionable result copy */
:root{--v32-void:#050706;--v32-panel:#0b0d0c;--v32-gold:#d7b966;--v32-gold-soft:#9c8246;--v32-ash:#b8b1a4;--v32-seal:#8f2a23}
body.page-app:not(.page-result-v27) .wrap{padding-bottom:48px!important}
body.page-app:not(.page-result-v27) header{min-height:220px!important;margin-bottom:18px!important}
body.page-app:not(.page-result-v27) .v32-manse-shell{overflow:hidden;padding:0!important;border-color:rgba(215,185,102,.42)!important;background:linear-gradient(160deg,rgba(19,17,14,.98),rgba(7,8,7,.99))!important;box-shadow:0 28px 80px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,240,198,.035)!important}
.v32-progress{position:relative;display:grid;grid-template-columns:1fr 1fr;margin:0;padding:20px 24px 18px;border-bottom:1px solid rgba(215,185,102,.16)}
.v32-progress::before{content:"";position:absolute;left:25%;right:25%;top:35px;height:1px;background:rgba(215,185,102,.24)}
.v32-progress::after{content:"";position:absolute;left:25%;top:35px;width:0;height:1px;background:var(--v32-gold);transition:width .24s ease}
.v32-progress[data-step="2"]::after{width:50%}
.v32-progress li{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;color:#716d64;font-size:10px;letter-spacing:.08em;list-style:none}
.v32-progress li span{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(215,185,102,.28);background:var(--v32-panel);color:#8b8068;font:700 15px/1 "Song Myung",serif;transform:rotate(45deg)}
.v32-progress li span i{font-style:normal;transform:rotate(-45deg)}
.v32-progress li.is-active{color:#e1c983}
.v32-progress li.is-active span,.v32-progress li.is-done span{border-color:var(--v32-gold);color:#ffe6a1;box-shadow:0 0 22px rgba(178,126,42,.15)}
.v32-slide{padding:28px 30px 30px}
.v32-slide[hidden]{display:none!important}
.v32-slide.is-entering{animation:v32SlideIn .24s ease both}
@keyframes v32SlideIn{from{opacity:.15;transform:translateX(18px)}to{opacity:1;transform:none}}
.v32-slide__eyebrow{margin:0 0 8px;color:var(--v32-gold-soft);font-size:10px;font-weight:700;letter-spacing:.18em}
.v32-slide h2{margin:0!important;padding:0!important;border:0!important;color:#f4ead4!important;font:700 clamp(24px,4.5vw,34px)/1.38 "Song Myung",serif!important;letter-spacing:-.02em!important}
.v32-slide__lead{margin:9px 0 24px;color:#a8a093;font-size:13px;line-height:1.7}
.v32-fields{display:grid;gap:22px}
.v32-field{display:grid;gap:9px;min-width:0}
.v32-field>label,.v32-field__label{color:#e6dcc7!important;font-size:13px!important;font-weight:700;letter-spacing:.03em}
.v32-field__hint{margin:-3px 0 0;color:#847e73;font-size:10px;line-height:1.55}
.v32-seg{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-height:52px;border:1px solid rgba(215,185,102,.25)!important;border-radius:2px!important;background:#070807!important}
.v32-seg button{min-width:0;min-height:50px;padding:10px!important;border-right:1px solid rgba(215,185,102,.13)!important;background:transparent!important;color:#aaa397!important;font-size:14px!important}
.v32-seg button:last-child{border-right:0!important}
.v32-seg button.on{color:#0a0a08!important;background:linear-gradient(110deg,#ad8430,#efd889 52%,#ae8433)!important;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,245,206,.35)}
.v32-date-line{display:grid;grid-template-columns:minmax(0,1.35fr) auto minmax(0,.8fr) auto minmax(0,.8fr);align-items:center;gap:8px}
.v32-date-line>span{color:#6f6654;font:400 18px/1 "Song Myung",serif}
body.page-app:not(.page-result-v27) .v32-date-line input,body.page-app:not(.page-result-v27) .v32-date-line select,body.page-app:not(.page-result-v27) .v32-time-line select,body.page-app:not(.page-result-v27) .v32-city-line select{width:100%!important;min-width:0;min-height:52px;border:1px solid rgba(215,185,102,.25)!important;border-radius:2px!important;color:#f0e6cf!important;background:#0a0c0b!important;font-size:16px!important}
.v32-time-line{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.v32-inline-check{margin:0!important;padding:0!important;color:#a49d91!important}
.v32-inline-check label{font-size:12px;line-height:1.55}
.v32-gender{grid-template-columns:repeat(2,minmax(0,1fr))}
.v32-city-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}
.v32-city-line span{color:var(--v32-gold-soft);font-size:10px;white-space:nowrap}
.v32-more-options{margin:22px 0 0!important;padding:13px 14px;border:1px solid rgba(215,185,102,.14);background:rgba(0,0,0,.16)}
.v32-more-options>summary{color:#a9a194!important;font-size:11px!important}
.v32-more-options .grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;margin-top:13px!important}
.v32-next,.v32-start{position:relative;width:100%;min-height:62px;margin-top:26px;border:1px solid #d9b75e;border-radius:1px;overflow:hidden;cursor:pointer;color:#f9e6aa;background:#080a08;font:700 19px/1.3 "Song Myung",serif;letter-spacing:.04em;box-shadow:inset 0 0 26px rgba(204,157,61,.08)}
.v32-next::before,.v32-start::before{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--v32-seal),var(--v32-gold),#6e4f8c)}
.v32-next:hover,.v32-start:hover{background:#15150f;color:#fff1bf}
.v32-back{display:block;margin:18px auto 0;padding:6px 10px;border:0;color:#8c867a;background:transparent;font-size:11px;cursor:pointer}
.v32-consent{margin:24px 0 0!important;padding:13px 14px!important;border:1px solid rgba(215,185,102,.13)!important;background:rgba(255,255,255,.025)!important}
.v32-consent label{color:#aaa398!important;font-size:11px!important;line-height:1.6!important}
.v32-consent a{color:#d5b968!important}
.v32-slide .err{margin-top:11px!important;color:#e1b45f!important}
body.page-app:not(.page-result-v27) .manse-submit-dock{position:static!important;width:auto!important;transform:none!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
body.page-result-v27 .technical-reading{min-width:0;overflow:visible}
body.page-result-v27 .technical-reading>summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;align-items:center;min-width:0;padding:16px 48px 16px 17px!important}
body.page-result-v27 .technical-reading>summary span{min-width:0;overflow-wrap:anywhere;font-size:15px}
body.page-result-v27 .technical-reading>summary small{min-width:0;white-space:normal;text-align:right;line-height:1.45}
body.page-result-v27 .technical-reading>.card{min-width:0;overflow:hidden}
body.page-result-v27 .technical-reading>.card h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 6px;line-height:1.45}
body.page-result-v27 .technical-reading>.card h2 small{white-space:normal}
body.page-result-v27 .pillar{min-width:0}
body.page-result-v27 .pillar .hangul,body.page-result-v27 .hidden-stems{overflow-wrap:anywhere;word-break:keep-all}
body.page-result-v27 .hidden-stems span,body.page-result-v27 .hidden-stems small{display:inline-block;margin:0 1px}
body.page-result-v27 .dw-scroll{scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
body.page-result-v27 .dw{scroll-snap-align:start}
.result-self-check{margin-top:13px!important;padding:13px 14px;border-left:3px solid #76509c;background:rgba(76,44,102,.065)}
.result-self-check>b,.sec-rule>b{display:block;margin-bottom:7px;color:#5f376f;font-size:11px;letter-spacing:.03em}
.result-self-check ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.result-self-check li{position:relative;padding-left:15px;color:#423849;font-size:13px;line-height:1.65}
.result-self-check li::before{content:"+";position:absolute;left:0;color:#8a619d;font-weight:700}
.sec-rule{margin-top:12px!important;padding:13px 14px;border:1px solid rgba(136,97,50,.24);background:#f5eddb;color:#3d3329!important;font-size:13px!important;line-height:1.7!important}
@media(max-width:640px){
  body.page-app:not(.page-result-v27) header{min-height:190px!important}
  .v32-progress{padding-inline:15px}.v32-slide{padding:24px 16px 22px}.v32-slide h2{font-size:27px!important}
  .v32-date-line{gap:5px;grid-template-columns:minmax(0,1.25fr) auto minmax(0,.82fr) auto minmax(0,.82fr)}
  body.page-app:not(.page-result-v27) .v32-date-line input,body.page-app:not(.page-result-v27) .v32-date-line select{padding-inline:8px!important;font-size:14px!important}
  .v32-city-line{grid-template-columns:1fr;gap:5px}.v32-next,.v32-start{min-height:60px;font-size:18px}
  body.page-result-v27 .technical-reading>summary{grid-template-columns:1fr;padding-right:45px!important}
  body.page-result-v27 .technical-reading>summary small{text-align:left}
  body.page-result-v27 .pillars{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  body.page-result-v27 .pillar .hanja{font-size:42px!important;line-height:1.15}
  body.page-result-v27 .pillar .v27-zhi{font-size:36px!important}
  body.page-result-v27 .pillar .hangul,body.page-result-v27 .pillar .tg,body.page-result-v27 .hidden-stems{font-size:11px!important;line-height:1.55}
  body.page-result-v27 .technical-element-hero{grid-template-columns:78px minmax(0,1fr)!important;gap:12px;padding:12px}
  body.page-result-v27 .technical-element-sigil{width:78px;height:78px}body.page-result-v27 .technical-element-sigil b{font-size:36px}
  body.page-result-v27 .technical-element-copy strong{font-size:17px;line-height:1.42}
  body.page-result-v27 .bar-row{align-items:flex-start;gap:7px}body.page-result-v27 .bar-row .bl{width:65px;flex:0 0 65px;font-size:11px;line-height:1.45}body.page-result-v27 .bar-track{margin-top:1px}
}
@media(max-width:370px){.v32-date-line{grid-template-columns:minmax(0,1.2fr) auto minmax(0,.78fr) auto minmax(0,.78fr);gap:3px}.v32-slide{padding-inline:13px}body.page-result-v27 .technical-element-hero{grid-template-columns:1fr!important;text-align:center}body.page-result-v27 .technical-element-sigil{margin:auto}}
@media(prefers-reduced-motion:reduce){.v32-slide.is-entering{animation:none!important}.v32-progress::after{transition:none!important}}


/* V32 visual polish: preserve the funnel, improve hierarchy and mobile scanability. */
body.page-app:not(.page-result-v27) .v32-manse-shell{scroll-margin-top:150px}
body.page-app:not(.page-result-v27) .v32-progress li.is-done span{border-color:#d7b966;background:#b99443;color:#090a08;box-shadow:0 0 18px rgba(215,185,102,.18)}
body.page-app:not(.page-result-v27) .v32-seg button:focus-visible,
body.page-app:not(.page-result-v27) .v32-next:focus-visible,
body.page-app:not(.page-result-v27) .v32-start:focus-visible,
body.page-app:not(.page-result-v27) .v32-back:focus-visible{outline:2px solid #f0d687;outline-offset:3px}
body.page-result-v27 header h1{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
body.page-result-v27 header h1 .stamp{margin-left:0}
body.page-result-v27 .plain-reading .result-self-check{border-left-color:#76509c;background:linear-gradient(135deg,rgba(103,62,132,.1),rgba(255,255,255,.35))}
body.page-result-v27 .plain-reading .result-self-check li{color:#3f3444!important}
body.page-result-v27 .plain-reading .sec-rule{border-color:rgba(136,97,50,.32)!important;background:linear-gradient(135deg,#f8f0df,#eee0c4)!important;color:#332b22!important}
body.page-result-v27 .plain-reading .sec-rule>b{color:#693f78!important}

@media(max-width:640px){
  body.page-result-v27 .v27-card-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important;margin:0 0 12px!important;padding:0!important;overflow:visible!important;scroll-snap-type:none!important}
  body.page-result-v27 .v27-card-nav button{display:flex!important;flex:initial!important;flex-basis:auto!important;min-width:0!important;width:auto!important;min-height:58px!important;padding:8px 2px!important;gap:3px!important}
  body.page-result-v27 .v27-card-nav button b{font-size:17px!important;line-height:1!important}
  body.page-result-v27 .v27-card-nav button span{font-size:10.5px!important;line-height:1.2!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
  body.page-result-v27 .plain-reading .result-self-check,
  body.page-result-v27 .plain-reading .sec-rule{padding:14px!important;font-size:14px!important;line-height:1.72!important}
}


/* V32 contrast specificity fix */
body.v16-flow.page-app.page-result-v27 .card p.sec-rule{color:#332b22!important;-webkit-text-fill-color:#332b22!important}
body.v16-flow.page-app.page-result-v27 .card p.sec-rule>b{color:#693f78!important;-webkit-text-fill-color:#693f78!important}


/* V32 manse grid display fix */
body.page-result-v27 .technical-reading .pillars{display:grid!important}
