/* ETOS ZH Exits 0.1.0. Scoped, high specificity. Button: white text on brand orange in every state. */
html body .etzx{box-sizing:border-box;max-width:100%;overflow-wrap:anywhere;font-family:inherit}
html body .etzx *{box-sizing:border-box;max-width:100%}
html body .etzx.etzx-mid{margin:1.6em 0;padding:.75em 1em;border-left:4px solid #e85d2a;background:#fff8f3;color:#0d1b2a;font-size:1rem;line-height:1.7;border-radius:0 8px 8px 0}
html body .etzx.etzx-end{margin:2.4em 0 1em;padding:clamp(18px,4vw,30px);border:1px solid #f0d9cc;border-radius:16px;background:#fff8f3;color:#0d1b2a;line-height:1.75}
html body .etzx.etzx-end p{margin:0 0 .9em;color:#0d1b2a}
html body .etzx.etzx-end p.etzx-title{font-size:1.3rem;font-weight:800;line-height:1.4;margin-bottom:.6em}
html body .etzx.etzx-end p.etzx-cta{margin:1.1em 0 1em}
html body .etzx.etzx-end p.etzx-sec{margin:0;font-size:.95rem}
html body .etzx a.etzx-link:link,html body .etzx a.etzx-link:visited{color:#0757b9;font-weight:700;text-decoration:underline;text-underline-offset:3px}
html body .etzx a.etzx-link:hover,html body .etzx a.etzx-link:active{color:#064a9e;text-decoration:underline}
html body .etzx a.etzx-link:focus-visible,html body .etzx a.etzx-btn:focus-visible{outline:3px solid #0d1b2a;outline-offset:3px;box-shadow:0 0 0 6px #fff}
html body .etzx a.etzx-btn,
html body .etzx a.etzx-btn:link,
html body .etzx a.etzx-btn:visited,
html body .etzx a.etzx-btn:hover,
html body .etzx a.etzx-btn:active,
html body .etzx a.etzx-btn:focus{display:inline-block;max-width:100%;padding:.8em 1.5em;border:0;border-radius:999px;background:#c94a1f;color:#fff!important;-webkit-text-fill-color:#fff;font-size:1.15rem;font-weight:800;line-height:1.4;text-align:center;text-decoration:none;white-space:normal}
html body .etzx a.etzx-btn:hover,
html body .etzx a.etzx-btn:active{background:#a83d18;color:#fff!important}
@media (max-width:480px){
  html body .etzx a.etzx-btn,html body .etzx a.etzx-btn:link,html body .etzx a.etzx-btn:visited{display:block;width:100%}
}

/* ETOS Exits 0.2.0: English end blocks (.etos-exit). Scoped, high specificity. Same brand button as zh: #c94a1f base, #a83d18 hover, white text in every state. The zh rules above are unchanged. */
html body div.etos-exit{box-sizing:border-box;max-width:100%;margin:2.4em 0 1em;padding:clamp(18px,4vw,30px);border:1px solid #f0d9cc;border-radius:16px;background:#fff8f3;color:#0d1b2a;font-family:inherit;font-size:1rem;line-height:1.75;overflow-wrap:anywhere}
html body div.etos-exit.etos-amazon-card{border-color:#d0d7e2;background:#f6f8fb}
html body div.etos-exit *{box-sizing:border-box;max-width:100%}
html body div.etos-exit p{margin:0 0 .9em;color:#0d1b2a}
html body div.etos-exit h3{margin:0 0 .6em;padding:0;color:#0d1b2a;font-size:1.3rem;font-weight:800;line-height:1.4}
html body div.etos-exit p.etos-disclosure{font-size:.92rem;line-height:1.6}
html body div.etos-exit p.etos-btn-row{margin:1.1em 0 1em}
html body div.etos-exit > :last-child{margin-bottom:0}
html body div.etos-exit a:link,html body div.etos-exit a:visited{color:#0757b9;font-weight:700;text-decoration:underline;text-underline-offset:3px}
html body div.etos-exit a:hover,html body div.etos-exit a:active{color:#064a9e;text-decoration:underline}
html body div.etos-exit a:focus-visible{outline:3px solid #0d1b2a;outline-offset:3px;box-shadow:0 0 0 6px #fff}
html body div.etos-exit a.etos-btn,
html body div.etos-exit a.etos-btn:link,
html body div.etos-exit a.etos-btn:visited,
html body div.etos-exit a.etos-btn:hover,
html body div.etos-exit a.etos-btn:active,
html body div.etos-exit a.etos-btn:focus{display:inline-block;max-width:100%;padding:.8em 1.5em;border:0;border-radius:999px;background:#c94a1f;color:#fff!important;-webkit-text-fill-color:#fff;font-size:1.1rem;font-weight:800;line-height:1.4;text-align:center;text-decoration:none;white-space:normal}
html body div.etos-exit a.etos-btn:hover,
html body div.etos-exit a.etos-btn:active{background:#a83d18;color:#fff!important}
@media (max-width:480px){
  html body div.etos-exit a.etos-btn,html body div.etos-exit a.etos-btn:link,html body div.etos-exit a.etos-btn:visited{display:block;width:100%}
}

/* ETOS Exits 0.2.3: member box (L2 member-box-zh/en.html look, inline styles moved here) and the mid line on English pages. */
html body aside.etzx.etzx-member{max-width:720px;margin:2rem 0;padding:1.25rem 1.4rem;background:#f4f9fa;border:1px solid #cfe3e7;border-left:5px solid #39c2d7;border-radius:8px;color:#16242b;line-height:1.7}
html body aside.etzx.etzx-member p{margin:0;color:#2c3e46;font-size:1rem}
html body aside.etzx.etzx-member p.etzx-mtitle{margin:0 0 .35rem;font-size:1.15rem;font-weight:700;line-height:1.4;color:#16242b}
html body aside.etzx.etzx-member p.etzx-mbody{margin:0 0 1rem}
html body aside.etzx.etzx-member a.etzx-mbtn,html body aside.etzx.etzx-member a.etzx-mbtn:link,html body aside.etzx.etzx-member a.etzx-mbtn:visited,html body aside.etzx.etzx-member a.etzx-mbtn:hover,html body aside.etzx.etzx-member a.etzx-mbtn:active,html body aside.etzx.etzx-member a.etzx-mbtn:focus{display:inline-block;min-height:44px;padding:.7rem 1.3rem;background:#16242b;color:#fff!important;-webkit-text-fill-color:#fff;font-weight:700;font-size:1rem;line-height:1.5;text-decoration:none;border-radius:6px}
html body aside.etzx.etzx-member a.etzx-mbtn:focus-visible{outline:3px solid #39c2d7;outline-offset:3px}
/* 0.3.0: affiliate card (Shopee / Amazon). Neutral grey so it reads as a partner offer, not the site product. */
html body .etzx.etzx-aff{margin:2em 0 1em;padding:clamp(16px,4vw,24px);border:1px solid #d8dee6;border-radius:14px;background:#f7f9fb;color:#0d1b2a;line-height:1.7}
html body .etzx.etzx-aff p{margin:0 0 .8em;color:#0d1b2a}
html body .etzx.etzx-aff p.etzx-atitle{font-size:1.15rem;font-weight:800;line-height:1.4}
html body .etzx.etzx-aff p.etzx-adisc{font-size:.85rem;color:#4a5563}
html body .etzx a.etzx-abtn,html body .etzx a.etzx-abtn:link,html body .etzx a.etzx-abtn:visited,html body .etzx a.etzx-abtn:hover{display:inline-block;padding:.7em 1.2em;border-radius:10px;background:#0d1b2a;color:#fff !important;font-weight:700;text-decoration:none}
