
/* Screen 02 presentation. Birth data, coordinates and Horachak binding remain in index.html. */
body.on-v2-birth{
  --v2-s2-ink:#31231a;--v2-s2-gold:#92652f;
  background:#fbf4e7;
  color:var(--v2-s2-ink);font-family:'Mahayant Sarabun',sans-serif;
}
html[lang="en"] body.on-v2-birth{font-family:'Mahayant Sarabun',sans-serif}
html[lang="zh-Hans"] body.on-v2-birth{font-family:'PingFang SC','Mahayant CJK S01',sans-serif}
html[lang="zh-Hant"] body.on-v2-birth{font-family:'PingFang TC','Mahayant CJK S01',sans-serif}
body.on-v2-birth .wrap{position:relative;max-width:1024px;min-height:1536px;padding:0 18px 40px;background:url('v2/S02_BACKGROUND_APPROVED.webp') center top / 100% auto no-repeat}
body.on-v2-birth .wrap>footer,body.on-v2-birth #floating-contact{display:none !important}
body.on-v2-birth .v2-brand-header{background:transparent;border:0;margin:0 0 4px;padding:7px 4px 10px}
body.on-v2-birth #s-birth{position:relative;display:block;max-width:100%;padding:0 8px 50px;margin:0 auto;background:transparent;border:0;box-shadow:none}
body.on-v2-birth .v2-back{position:absolute;z-index:4;top:0;left:0;margin:0;border:1px solid #c6a37188;border-radius:50%;background:#fffaf2e6;color:#6b4d25;font-size:18px;line-height:1;padding:7px;width:38px;height:38px}
body.on-v2-birth .v2-birth-head{margin:4px auto 0;padding:20px 24px 0;max-width:760px;text-align:center;isolation:auto}
body.on-v2-birth .v2-birth-head::before{display:none}
body.on-v2-birth .v2-birth-head h1{margin:0;color:#2d2118;font-family:'Mahayant Sarabun',sans-serif;font-size:clamp(30px,4.8vw,54px);font-weight:600;line-height:1.22;letter-spacing:0}
body.on-v2-birth .v2-s2-hero-support{white-space:pre-line;margin:8px auto 0;max-width:670px;color:#3a2c22;font-size:clamp(14px,1.75vw,19px);font-weight:400;line-height:1.45;letter-spacing:0}
body.on-v2-birth .v2-s2-orbit{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,34%) minmax(0,1fr);gap:12px;align-items:start;margin:9px auto -92px;max-width:980px;min-height:335px}
body.on-v2-birth .v2-s2-wheel{display:block;width:100%;max-width:360px;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 9px 14px #aa793453);margin:0 auto}
body.on-v2-birth .v2-s2-side-note{white-space:pre-line;margin:30px 0 0;color:#47392d;font-size:clamp(13px,1.45vw,17px);line-height:1.5;text-align:center;text-shadow:0 1px 2px #fff}
body.on-v2-birth .v2-s2-side-note::after{content:'✦';display:block;width:65%;max-width:155px;margin:10px auto 0;padding:2px 0;border-top:1px solid #bb995d;color:#a47632;font-size:13px;line-height:1;text-align:center}
body.on-v2-birth .v2-birth-card{position:relative;z-index:2;max-width:860px;margin:0 auto;padding:23px 25px 19px;border:1px solid #c8a66e;border-radius:29px;background:#fffaf3ed;box-shadow:0 14px 38px #6d4c2224,inset 0 0 0 4px #fffaf6,inset 0 0 0 5px #d6bc9470;backdrop-filter:blur(6px)}
body.on-v2-birth .v2-s2-card-head{text-align:center;padding:0 10px 14px;border-bottom:1px solid #d6be9b}
body.on-v2-birth .v2-s2-card-head h2{margin:0;color:#2b211b;font-size:clamp(24px,3vw,36px);font-weight:600;line-height:1.28}
body.on-v2-birth .v2-s2-card-head p{margin:4px 0 0;color:#604e3c;font-size:clamp(13px,1.35vw,17px);line-height:1.4}
body.on-v2-birth .v2-s2-field-row{display:grid;grid-template-columns:minmax(205px,34%) minmax(0,1fr);gap:17px;align-items:center;padding:16px 0;border-bottom:1px solid #e3d2b9}
body.on-v2-birth .v2-s2-field-row:nth-last-of-type(1){border-bottom:0}
body.on-v2-birth .v2-s2-field-intro{display:flex;gap:12px;align-items:center;min-width:0}
body.on-v2-birth .v2-s2-field-intro svg{flex:0 0 56px;width:56px;height:56px;padding:9px;stroke:#835718;stroke-width:2.3;fill:none;stroke-linecap:round;stroke-linejoin:round;border:1px solid #ebd3ad;border-radius:50%;background:radial-gradient(circle,#fffdf8 20%,#f2dbc0 100%)}
body.on-v2-birth .v2-s2-field-intro h3{margin:0;color:#2a211c;font-size:clamp(18px,2.2vw,25px);font-weight:600;line-height:1.24}
body.on-v2-birth .v2-s2-field-intro p{white-space:pre-line;margin:3px 0 0;color:#574637;font-size:clamp(12px,1.34vw,15px);line-height:1.36}
body.on-v2-birth .v2-s2-field-controls{display:grid;gap:10px;align-items:end;min-width:0}
body.on-v2-birth .v2-s2-field-controls>div{min-width:0}
body.on-v2-birth .v2-s2-date-controls{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr) minmax(0,1fr)}
body.on-v2-birth .v2-s2-time-controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
body.on-v2-birth .v2-s2-place-controls{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
body.on-v2-birth .v2-s2-field-controls label{display:block;margin:0 0 5px;color:#403329;font-size:clamp(12px,1.35vw,15px);font-weight:500;line-height:1.3}
body.on-v2-birth .v2-s2-field-controls select,body.on-v2-birth .v2-s2-field-controls input{display:block;width:100%;min-width:0;height:48px;min-height:48px;margin:0;padding:8px 10px;color:#2e241c;background-color:#fff;border:1px solid #d6bfa1;border-radius:8px;box-shadow:0 2px 8px #63492812;font-family:inherit;font-size:15px;font-weight:500;line-height:1.3}
body.on-v2-birth .v2-s2-field-controls select{appearance:auto}
body.on-v2-birth .v2-s2-contact-actions{display:inline-flex;gap:10px;margin-left:9px;white-space:nowrap}
body.on-v2-birth .v2-s2-colon{align-self:end;height:43px;color:#6d4727;font-size:23px;line-height:40px}
body.on-v2-birth .v2-s2-unknown{grid-column:1/-1;margin:1px 0 0;font-size:13px;line-height:1.4}
body.on-v2-birth .v2-s2-unknown #contact-line-link{display:inline;color:#564633;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#ae8854}
body.on-v2-birth .v2-s2-gender{display:flex;align-items:center;justify-content:center;gap:12px;margin:6px auto 0;color:#443222;font-size:14px}
body.on-v2-birth .v2-s2-gender>span{font-weight:500;margin-right:3px}
body.on-v2-birth .v2-s2-gender label{display:inline-flex;align-items:center;gap:5px;margin:0;padding:0;color:inherit;font:inherit;letter-spacing:0;cursor:pointer}
body.on-v2-birth .v2-s2-gender input[type="radio"]{appearance:auto;-webkit-appearance:radio;flex:none;width:16px;height:16px;min-width:0;min-height:0;margin:0;padding:0;border:0;background:transparent;accent-color:#936a35}
body.on-v2-birth .v2-s2-gender.field-err{outline:1px solid #b54444;outline-offset:3px;border-radius:4px}
body.on-v2-birth .v2-s2-panel-scene{position:relative}
body.on-v2-birth .v2-birth-card .err-msg{margin:8px auto;text-align:center}
body.on-v2-birth .v2-birth-card .v2-s2-cta{position:relative;isolation:isolate;display:block;width:min(98%,390px);max-width:390px;min-height:0;aspect-ratio:3 / 1;margin:0 auto;padding:0 9%;border:0;border-radius:0;clip-path:none;background:transparent;box-shadow:none;color:#fff5de;text-shadow:0 1px 2px #27180e;font-family:'Mahayant Sarabun',sans-serif;font-size:clamp(15px,2.35vw,21px);font-weight:500;letter-spacing:0}
body.on-v2-birth .v2-s2-cta::before{content:'';position:absolute;z-index:-2;inset:25% 8% 28%;border-radius:18px;background:linear-gradient(#6b482b,#281b11);pointer-events:none}
body.on-v2-birth .v2-s2-cta::after{content:'';position:absolute;z-index:-1;inset:0;background:url('v2/V2_SHARED_CTA_GOLD_FRAME_APPROVED.webp') center / contain no-repeat;pointer-events:none}
body.on-v2-birth .v2-s2-cta>span{white-space:nowrap}
body.on-v2-birth .v2-s2-privacy{margin:0 0 3px;color:#6e5b47;font-size:12px;line-height:1.45;text-align:center}
body.on-v2-birth .v2-s2-lower-notes{display:flex;justify-content:space-between;gap:18px;max-width:780px;margin:25px auto 0}
body.on-v2-birth .v2-s2-lower-notes p,body.on-v2-birth .v2-s2-globe-note{white-space:pre-line;margin:0;color:#49392b;font-size:clamp(12px,1.4vw,16px);line-height:1.45;text-align:center;text-shadow:0 1px #fff}
body.on-v2-birth .v2-s2-callout-heading{display:block;margin-bottom:5px;color:#27190f;font-weight:700;line-height:1.25}
body.on-v2-birth .v2-s2-callout-detail{display:block;color:#332319;line-height:1.4}
body.on-v2-birth .v2-s2-side-note .v2-s2-callout-heading{margin-bottom:7px;font-size:1em;color:#24160c}
body.on-v2-birth .v2-s2-side-note .v2-s2-callout-detail{color:#302015}
body.on-v2-birth .v2-s2-lower-notes p{max-width:210px}
body.on-v2-birth .v2-s2-globe-note{margin:85px auto 0;max-width:240px}
body.on-v2-birth .v2-s2-ending{margin:90px auto 0;padding-top:16px;border-top:1px solid #bb955f;max-width:430px;color:#6a5135;font-family:Georgia,'Times New Roman',serif;font-size:clamp(13px,1.5vw,17px);letter-spacing:.035em;line-height:1.45;text-align:center}
html[lang="zh-Hans"] body.on-v2-birth .v2-s2-ending,html[lang="zh-Hant"] body.on-v2-birth .v2-s2-ending{font-family:'Songti SC','Mahayant CJK S01',serif}
@media(max-width:700px){
  body.on-v2-birth .wrap{isolation:isolate;min-height:0;padding:0 5px 13px;background-image:linear-gradient(to bottom,transparent 20%,#fbf4e7 43%),url('v2/S02_BACKGROUND_APPROVED.webp');background-size:100% 100%,100% auto;background-position:center top;background-repeat:no-repeat}
  /* Reposition intact scene bands; every image keeps its original aspect ratio. */
  body.on-v2-birth .wrap::before,body.on-v2-birth .wrap::after{content:'';position:absolute;z-index:-1;left:0;right:0;pointer-events:none;background-image:url('v2/S02_BACKGROUND_APPROVED.webp');background-repeat:no-repeat;background-size:100% auto}
  body.on-v2-birth .wrap::before{top:29%;height:46%;background-position:center 52%;-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 78%,transparent);mask-image:linear-gradient(transparent,#000 18%,#000 78%,transparent)}
  body.on-v2-birth .wrap::after{bottom:0;height:44vw;max-height:308px;background-position:center bottom;-webkit-mask-image:linear-gradient(transparent,#000 22%);mask-image:linear-gradient(transparent,#000 22%)}
  body.on-v2-birth .v2-brand-header{min-height:46px;padding:2px 5px;margin-bottom:0;background:linear-gradient(180deg,#fff9efed,#fff9efb8);box-shadow:0 5px 14px #fff9ef83}
  body.on-v2-birth .v2-brand-header .v2-brand-name{font-size:clamp(10px,2.8vw,12px);font-weight:500;color:#543718;text-shadow:0 1px #fff}
  body.on-v2-birth .v2-brand-header .lang-switcher{display:grid;grid-template-columns:repeat(4,29px);align-items:center;justify-content:end;flex:none;gap:0}
  body.on-v2-birth .v2-brand-header .lang-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;margin:0 !important;transform:none;align-self:center;min-width:29px;height:38px;min-height:38px;padding:0 3px;font-family:'Mahayant Sarabun',sans-serif;font-size:11px;font-weight:500;line-height:1;text-align:center;vertical-align:middle;color:#543718}
  body.on-v2-birth .v2-brand-header .lang-btn.on{background:#ead7bba8;color:#3d2919;box-shadow:inset 0 -2px #a87537}
  body.on-v2-birth #s-birth{z-index:1;padding:0 1px 10px}
  body.on-v2-birth .v2-back{left:1px;top:3px;width:28px;height:28px;padding:4px;font-size:14px}
  body.on-v2-birth .v2-birth-head{position:relative;z-index:3;margin:0 auto;padding:0 10px 5px;background:radial-gradient(ellipse 90% 100% at 50% 48%,#fffcf7e8 8%,#fffcf7a8 48%,transparent 95%)}
  body.on-v2-birth .v2-birth-head h1{font-size:clamp(21px,5.65vw,26px);line-height:1.2}
  body.on-v2-birth .v2-s2-hero-support{font-size:clamp(10px,2.65vw,12px);line-height:1.3;margin-top:2px;color:#291d16}
  body.on-v2-birth .v2-s2-orbit{position:relative;z-index:1;grid-template-columns:minmax(0,1fr) minmax(155px,48%) minmax(0,1fr);gap:2px;min-height:0;max-height:184px;margin:4px auto -58px}
  body.on-v2-birth .v2-s2-wheel{max-width:198px;transform:none}
  body.on-v2-birth .v2-s2-side-note{font-size:clamp(8px,2vw,9px);line-height:1.28;margin:7px 0 0;padding:3px 2px;color:#24190f;background:radial-gradient(ellipse,#fffdf5ed,#fffdf5b7 65%,transparent);text-shadow:0 1px #fff}
  body.on-v2-birth .v2-s2-side-note::after{margin-top:5px}
  body.on-v2-birth .v2-birth-card{width:76%;max-width:390px;padding:8px 9px 5px;border-radius:17px;background:#fffaf3f2;box-shadow:0 8px 23px #53371c26,inset 0 0 0 3px #fffaf6,inset 0 0 0 4px #d6bc9470}
  body.on-v2-birth .v2-s2-card-head{padding:0 2px 5px}
  body.on-v2-birth .v2-s2-card-head h2{font-size:clamp(17px,4.35vw,21px);line-height:1.25}
  body.on-v2-birth .v2-s2-card-head p{font-size:10px;line-height:1.2;margin:2px 0 0;color:#39281a}
  body.on-v2-birth .v2-s2-field-row{grid-template-columns:minmax(0,35%) minmax(0,1fr);gap:5px;padding:7px 0;align-items:center}
  body.on-v2-birth .v2-s2-field-intro{display:grid;grid-template-columns:19px minmax(0,1fr);align-content:center;align-items:start;column-gap:5px;min-width:0}
  body.on-v2-birth .v2-s2-field-intro>div{display:block;min-width:0}
  body.on-v2-birth .v2-s2-field-intro svg{width:19px;height:19px;padding:3px}
  body.on-v2-birth .v2-s2-field-intro h3{font-size:clamp(10px,2.65vw,11px);font-weight:700;line-height:1.24;color:#1d140e}
  body.on-v2-birth .v2-s2-field-intro p{font-size:clamp(8px,2.08vw,9px);line-height:1.25;margin:4px 0 0;color:#332319}
  body.on-v2-birth .v2-s2-field-controls{gap:3px}
  body.on-v2-birth .v2-s2-field-controls label{font-size:clamp(9px,2.4vw,10px);font-weight:600;line-height:1.2;margin-bottom:3px;text-align:center;color:#21150d}
  body.on-v2-birth .v2-s2-field-controls select,body.on-v2-birth .v2-s2-field-controls input{height:33px;min-height:33px;padding:2px 1px;font-size:11px;font-weight:600;text-align:center;text-align-last:center;color:#21150d;border-radius:5px}
  body.on-v2-birth .v2-s2-colon{height:32px;line-height:30px;font-size:15px}
  body.on-v2-birth .v2-s2-unknown{font-size:9px;line-height:1.25;text-align:center;color:#392718;white-space:normal}
  body.on-v2-birth .v2-s2-contact-actions{gap:6px;margin-left:3px}
  body.on-v2-birth .v2-s2-unknown #contact-line-link{color:#392718}
  body.on-v2-birth .v2-s2-gender{gap:9px;margin:5px auto 1px;padding:3px 0;font-size:11px;line-height:1.3;color:#281b12}
  body.on-v2-birth .v2-s2-gender label{gap:4px;padding:3px 2px}
  body.on-v2-birth .v2-s2-gender input[type="radio"]{width:14px;height:14px}
  body.on-v2-birth .v2-birth-card .v2-s2-cta{width:min(80%,215px);font-size:clamp(11px,3vw,13px);margin-top:0;margin-bottom:0}
  body.on-v2-birth .v2-s2-privacy{font-size:9px;margin-top:-4px;color:#2b1d14}
  body.on-v2-birth .v2-s2-lower-notes{position:absolute;z-index:3;top:54%;left:0;right:0;max-width:none;margin:0;gap:0;align-items:start;pointer-events:none}
  body.on-v2-birth .v2-s2-lower-notes p{width:11.5%;max-width:none;overflow-wrap:anywhere}
  body.on-v2-birth .v2-s2-lower-notes p,body.on-v2-birth .v2-s2-globe-note{font-size:clamp(8px,2.1vw,9px);line-height:1.27;color:#24160d;background:radial-gradient(ellipse,#fffaf2ef 5%,#fffaf2b8 58%,transparent 100%);padding:4px 1px;text-shadow:none}
  body.on-v2-birth .v2-s2-callout-heading{margin-bottom:4px;font-size:clamp(9px,2.35vw,10px);color:#1b120c}
  body.on-v2-birth .v2-s2-callout-detail{font-size:clamp(8px,2.1vw,9px);color:#281a12;line-height:1.28}
  body.on-v2-birth .v2-s2-globe-note{max-width:28%;margin:51px 1% 0 auto;text-align:left;min-height:48px}
  body.on-v2-birth .v2-s2-ending{margin-top:12px;margin-bottom:9px;padding-top:4px;font-size:9px;color:#2d1c13;background:radial-gradient(ellipse,#fff9efdf,transparent)}
}
@media (min-width:376px) and (min-height:760px) and (max-width:700px){
  body.on-v2-birth .v2-s2-orbit{max-height:194px;margin-bottom:-55px}
  body.on-v2-birth .v2-s2-wheel{max-width:200px}
}
@media(max-width:370px){body.on-v2-birth .v2-birth-card{width:78%}body.on-v2-birth .v2-s2-field-intro p{font-size:8px}body.on-v2-birth .v2-s2-date-controls{grid-template-columns:minmax(0,.72fr) minmax(0,1.36fr) minmax(0,.95fr)}}

@media(max-width:700px){
  html[lang="en"] body.on-v2-birth .v2-s2-field-intro p,
  body.on-v2-birth .preview-page.en .v2-s2-field-intro p{font-size:8px;line-height:1.22;white-space:normal}
  body.on-v2-birth .v2-brand-header{position:relative;z-index:1}
}

