/* Lucky card discovery and bilingual presentation; no business state changes. */
.language-toggle { flex: 0 0 auto; min-height: 44px; min-width: 54px; padding: 8px 10px; border: 1px solid #d8b35f45; border-radius: 12px; background: #0a1b29; color: #eedaa5; font: 600 12px/1.3 system-ui, sans-serif; cursor: pointer; touch-action: manipulation; }
.language-toggle:hover { border-color: #d8b35f; background: #132b3c; }
.language-toggle:focus-visible, .card-download-link:focus-visible { outline: 2px solid #f2dc9f; outline-offset: 4px; }
.topbar .language-toggle { margin-left: auto; }
.topbar .wallet-chip { margin-left: 0; }
.admin-language-toggle { position: fixed; right: 20px; bottom: 16px; z-index: 45; }
.admin-main { padding-bottom: 90px; }
.admin-shell .field-help { font-size: 14px; }
html[lang="ko"] { font-family: "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif; word-break: keep-all; overflow-wrap: anywhere; }
html[lang="ko"] body { font-family: "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif; }
html[lang="ko"] button, html[lang="ko"] input, html[lang="ko"] select, html[lang="ko"] textarea { font-family: "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif; }
html[lang="ko"] .topbar, html[lang="ko"] .section-heading, html[lang="ko"] .mobile-product-header { letter-spacing: 0; }
.bottom-nav.bottom-nav--five { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.bottom-nav.bottom-nav--five::before { display: none; }
.bottom-nav--five button { min-width: 0; padding: 9px 2px; font-size: 12px; letter-spacing: 0; }
.bottom-nav--five button.is-active { background: linear-gradient(160deg, #d8b35f1c, #d8b35f03); border-radius: 17px; }
.bottom-nav--five button svg { width: 24px; height: 24px; }
.card-view { max-width: 1080px; margin-inline: auto; padding: 28px 2px 16px; }
.card-intro { text-align: center; position: relative; z-index: 1; }
.card-kicker { margin: 0 0 18px; font-size: 12px; color: #d8b35f; letter-spacing: .08em; }
.card-intro h1 { margin: 0; font-size: clamp(34px, 9vw, 62px); font-weight: 600; line-height: 1.28; letter-spacing: -.045em; }
.card-intro h1 span { color: #eed69a; }
.card-lead { margin: 18px auto 0; max-width: 29em; font-size: 14px; line-height: 1.8; color: #9cafbd; }
.card-stage { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 295px; padding: 32px 14px 25px; perspective: 1100px; isolation: isolate; }
.card-halo { position: absolute; inset: -20px -10px; z-index: -1; background: radial-gradient(ellipse at 50% 50%, #d9b76616, #1a61802b 30%, transparent 69%); }
.payment-card { position: relative; display: flex; flex-direction: column; justify-content: space-between; width: min(100%, 355px); aspect-ratio: 1.586; padding: 22px 24px; overflow: hidden; border: 1px solid #e7ce89aa; border-radius: 17px; color: #f3db9f; background: linear-gradient(120deg, #1b3a4c, #0b1c2c 40%, #112d42 80%, #264350); box-shadow: 0 24px 38px #0007, inset 0 1px 0 #fff3; transform: rotate(-5deg) rotateY(-9deg); animation: card-float 8s ease-in-out infinite; }
.payment-card::after { content: ""; position: absolute; inset: -60%; pointer-events: none; background: linear-gradient(110deg, transparent 40%, #fff1 49%, #f5dda328 50%, transparent 59%); animation: card-sheen 9s ease-in-out infinite; }
/* Card motion is the product illustration; pause whenever its stage is offscreen. */
.card-stage:not(.is-onstage) .payment-card, .card-stage:not(.is-onstage) .payment-card::after { animation-play-state: paused; }
.payment-card-top, .payment-card-bottom { display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 1; }
.payment-card-top strong { font: 600 22px/1.2 system-ui, sans-serif; letter-spacing: -.04em; }
.card-contactless { transform: rotate(90deg); font: 18px/1 monospace; opacity: .65; }
.payment-card-bottom span { font-size: 12px; letter-spacing: .08em; }
.payment-card-bottom strong { font: italic 800 27px/1 system-ui, sans-serif; letter-spacing: -.07em; }
.card-chip { display: grid; grid-template-columns: repeat(3,1fr); position: relative; width: 38px; height: 28px; margin-top: 14px; border: 1px solid #d0bb87; border-radius: 6px; background: linear-gradient(125deg, #b5934d, #ecd59a, #9d7d40); }
.card-chip i { border-right: 1px solid #796237; }
.card-chip i:last-child { border: 0; }
.card-chip::after { content: ""; position: absolute; inset: 9px 0; border-block: 1px solid #796237; }
.card-contours { position: absolute; width: 220px; height: 220px; right: -70px; top: -40px; border: 1px solid #e6c97c40; border-radius: 50%; }
.card-contours i { position: absolute; inset: 15px; border: 1px solid #e6c97c30; border-radius: 50%; }
.card-contours i:nth-child(2) { inset: 35px; }.card-contours i:nth-child(3) { inset: 55px; }
.card-art-caption { margin-top: 26px; color: #82939e; font-size: 12px; text-align: center; }
.card-editorial { display: grid; gap: 28px; }
.card-overview, .card-start { padding: 26px 20px; border-top: 1px solid #d8b35f3d; background: linear-gradient(160deg, #0d24324d, transparent); }
.card-section-title { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.card-section-title > span { font: 12px/1.4 monospace; color: #d8b35f; }.card-section-title h2 { font-size: 20px; margin: 0; font-weight: 600; }
.card-overview > p { color: #9cafbd; font-size: 14px; line-height: 1.9; margin: 0 0 28px; }
.card-feature-list { display: grid; gap: 24px; }.card-feature-list > div { display: flex; align-items: flex-start; gap: 16px; }
.card-feature-list svg { width: 23px; height: 23px; flex: 0 0 auto; stroke: #d8b35f; stroke-width: 1.5; fill: none; margin-top: 3px; }
.card-feature-list p { margin: 0; display: grid; gap: 6px; }.card-feature-list strong { font-size: 15px; font-weight: 500; }.card-feature-list span { font-size: 13px; line-height: 1.8; color: #9cafbd; }
.card-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 22px; }.card-steps li { display: flex; gap: 15px; }
.card-steps li > span { border: 1px solid #d8b35f38; color: #d8b35f; border-radius: 50%; width: 25px; height: 25px; flex-shrink: 0; display: grid; place-items: center; font-size: 12px; }
.card-steps strong { font-size: 14px; font-weight: 500; }.card-steps p { margin: 6px 0 0; font-size: 13px; color: #9cafbd; line-height: 1.8; }
.card-download { margin-top: 30px; padding-top: 22px; border-top: 1px solid #d8b35f25; display: flex; justify-content: space-between; align-items: center; gap: 12px; }.card-download > div { display: grid; gap: 5px; }.card-download > div strong { font-size: 17px; }.card-download > div span { font-size: 12px; color: #9cafbd; }
.card-download-link { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 10px 16px; border: 1px solid #d8b35f77; border-radius: 9px; text-decoration: none; color: #f2dc9f; font-size: 13px; transition: background .2s; }.card-download-link:hover { background: #d8b35f15; }.card-download-link svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.card-service-note { display: flex; align-items: flex-start; gap: 12px; margin: 14px 20px 28px; padding-top: 20px; border-top: 1px solid #ffffff0d; }.card-service-note img { flex: 0 0 auto; opacity: .8; }.card-service-note p { margin: 0; font-size: 12px; color: #8e9da9; line-height: 1.9; }
@keyframes card-float { 0%, 100% { transform: rotate(-5deg) rotateY(-9deg) translateY(0); } 50% { transform: rotate(-3deg) rotateY(-4deg) translateY(-7px); } }
@keyframes card-sheen { 0%, 35%, 100% { transform: translateX(-35%); opacity: 0; } 45%, 55% { opacity: 1; } 65% { transform: translateX(35%); opacity: 0; } }
@media (max-width: 600px) {
  .topbar { gap: 8px; }.topbar .prototype-pill { font-size: 12px; padding: 8px; letter-spacing: 0; }.topbar .brand-wordmark { display: none; }.topbar .wallet-chip { font-size: 13px; padding-inline: 12px; max-width: 190px; }
  .admin-language-toggle { top: auto; bottom: 16px; right: 16px; }
  html[lang="ko"] .section-heading h2 { font-size: 16px; }html[lang="ko"] .section-meta { font-size: 12px; }html[lang="ko"] .mobile-product-header em { font-size: 12px; }
}
@media (min-width: 760px) { .card-view { padding-top: 48px; }.card-editorial { grid-template-columns: 1fr 1fr; gap: 36px; }.card-stage { min-height: 360px; }.payment-card { width: 420px; }.card-overview, .card-start { padding: 30px; }.card-service-note { margin-inline: 30px; } }
@media (prefers-reduced-motion: reduce) { .payment-card, .payment-card::after { animation: none; } }

/* Expanded editorial: one document scroll, with native keyboard/touch disclosures. */
.card-section-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; margin: 0 12px 32px; padding-block: 12px; border-block: 1px solid #d8b35f29; }
.card-section-nav a { display: grid; place-items: center; min-height: 44px; padding: 6px; color: #d9c591; text-decoration: none; text-align: center; font-size: 12px; border-radius: 8px; }
.card-section-nav a:hover { background: #d8b35f12; }
.card-view h2[id] { scroll-margin-top: 120px; }
.card-lucky-connection, .card-scenarios, .card-checklist, .card-faq { margin: 28px 0 0; padding: 28px 20px; }
.card-section-copy { margin: 0 0 24px; color: #9cafbd; font-size: 14px; line-height: 1.9; max-width: 56em; }
.card-lucky-connection { background: radial-gradient(ellipse at 0 0,#d8b35f12,transparent 65%),#0b1c284d; border-block: 1px solid #d8b35f3d; }
.card-lucky-connection .card-section-title { align-items: flex-start; }
.card-lucky-connection .card-section-title img { flex: 0 0 auto; }
.card-account-pair { display: grid; gap: 12px; }
.card-account-pair article { position: relative; overflow: hidden; padding: 24px; border: 1px solid #cdd7df1c; background: #061420; }
.card-account-pair article > span { color: #d8b35f; font-size: 12px; }
.card-account-pair h3 { margin: 12px 0; font-size: 21px; font-weight: 500; }
.card-account-pair p { margin: 0; color: #a4b4bf; line-height: 1.85; font-size: 14px; position: relative; z-index: 1; }
.card-connection-caption { color: #d6c59c; font-size: 12px; line-height: 1.8; margin: 20px 0 0; }
.card-mini-ledger, .card-mini-network { display: flex; height: 34px; align-items: flex-end; gap: 9px; margin-top: 24px; opacity: .55; }
.card-mini-ledger i { width: 42px; height: 10px; background: linear-gradient(0deg,#d8b35f18,#d8b35fa1); border-top: 1px solid #e5cb87; }.card-mini-ledger i:nth-child(2) { height: 20px; }.card-mini-ledger i:nth-child(3) { height: 32px; }
.card-mini-network { align-items: center; gap: 30px; }.card-mini-network i { width: 12px; height: 12px; border: 1px solid #d8b35f; border-radius: 50%; position: relative; }.card-mini-network i:not(:last-child)::after { content:""; position: absolute; width: 29px; top: 5px; left: 12px; height: 1px; background: #d8b35f66; }
.card-scenarios { padding-inline: 20px; }
.card-scenario-grid { display: grid; gap: 28px; }.card-scenario-grid article { padding-top: 24px; border-top: 1px solid #b5cbd72b; }.card-scenario-grid svg { width: 42px; height: 42px; fill: none; stroke: #d8b35f; stroke-width: 1.2; }
.card-scenario-grid h3 { font-size: 19px; font-weight: 500; margin: 18px 0 12px; }.card-scenario-grid p { color: #a4b4bf; font-size: 14px; line-height: 1.9; margin: 0 0 18px; }.card-scenario-grid article > span { color: #d9c591; font-size: 12px; line-height: 1.8; }
.card-checklist { background: linear-gradient(120deg,#142e3e90,#07121c); border-top: 1px solid #d8b35f66; }.card-checklist dl { margin: 0; }.card-checklist dl > div { padding-block: 20px; border-bottom: 1px solid #adc1cc1a; }.card-checklist dt { color: #ebd6a3; font-size: 15px; margin-bottom: 10px; }.card-checklist dd { margin: 0; color: #a4b4bf; line-height: 1.9; font-size: 14px; }.card-checklist > p { color: #879ba9; font-size: 12px; line-height: 1.9; margin: 20px 0 0; }
.card-faq details { border-bottom: 1px solid #cdd7df24; }.card-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 64px; padding: 18px 0; cursor: pointer; font-size: 15px; line-height: 1.6; list-style: none; }.card-faq summary::-webkit-details-marker { display: none; }.card-faq summary::after { content: "+"; color: #d8b35f; font: 22px/1 monospace; flex-shrink: 0; }.card-faq details[open] summary::after { content: "−"; }.card-faq details[open] summary { color: #ebd6a3; }.card-faq details > p { margin: 0 0 24px; color: #9cafbd; font-size: 14px; line-height: 1.9; }
.card-closing { margin-top: 32px; padding: 32px 24px; background: radial-gradient(ellipse at 100% 50%,#d8b35f16,transparent 80%); border-block: 1px solid #d8b35f29; }.card-closing h2 { font-weight: 500; font-size: 24px; margin: 0; line-height: 1.5; }.card-closing > div > p:last-child { font-size: 14px; color: #9cafbd; line-height: 1.9; margin: 14px 0 22px; }
.card-section-nav a:focus-visible, .card-faq summary:focus-visible { outline: 2px solid #f2dc9f; outline-offset: 4px; }
@media (min-width:760px) { .card-account-pair { grid-template-columns: repeat(2,minmax(0,1fr)); gap:24px; }.card-scenario-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.card-lucky-connection,.card-scenarios,.card-checklist,.card-faq { padding: 38px 30px; }.card-checklist dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 36px; }.card-closing { display:flex; justify-content:space-between; align-items:center; gap:30px; }.card-closing .card-download-link { flex-shrink:0; }.card-section-nav { margin-inline:30px; } }
