:root{--entry-bg:var(--life-background,#f4f4f4);--entry-paper:var(--life-paper,#fff);--entry-ink:var(--life-ink,#111);--entry-muted:var(--life-muted,#68736d);--entry-line:var(--life-border,#d5d5d5);--entry-accent:var(--life-accent,#208f7b);--entry-font:var(--life-font,"Noto Sans KR","Malgun Gothic","Apple SD Gothic Neo",Arial,sans-serif)}
body.dark{--entry-bg:var(--bg,#151e21);--entry-paper:var(--paper,#1e2a2d);--entry-ink:var(--ink,#edf0e8);--entry-muted:var(--muted,#a0b0aa);--entry-line:var(--line,#39484a);--entry-accent:#8ac7b9}
.entryShell,.siteShell{width:min(1120px,calc(100% - 64px));margin-inline:auto}
.entryNav,.siteNav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px;border-bottom:1px solid var(--entry-line);font:14px/1.5 var(--entry-font)}
.entryBrand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:750;letter-spacing:-.06em;text-decoration:none;color:var(--entry-ink)}
.entryBrand svg{width:24px;height:28px}.entryNavLinks{display:flex;align-items:center;gap:24px}.entryNavLinks a{font-size:13px;text-decoration:none;color:var(--entry-muted)}.entryNavLinks a:hover,.siteFooter a:hover{color:var(--entry-ink)}
#home.entryLanding:not(.hide){display:block!important;height:auto!important;min-height:100dvh;overflow:visible;background:var(--entry-bg)!important;color:var(--entry-ink)!important;font-family:var(--entry-font)!important}
#home.entryLanding:before{display:none!important}#home .landingLegacy{display:none!important}
.entryHero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding:64px 0 70px;min-height:650px}
.entryEyebrow{font-size:11px;font-weight:650;letter-spacing:.13em;color:var(--entry-accent);margin:0 0 22px;text-transform:uppercase}
.entryHero h1{font:750 clamp(38px,4.5vw,62px)/1.28 var(--entry-font);letter-spacing:-.075em;margin:0 0 24px;color:var(--entry-ink)}.entryHero h1 em{font-style:normal;color:var(--entry-ink)}
.entryLead{font-size:16px;line-height:1.9;letter-spacing:-.025em;max-width:440px;margin:0 0 30px;color:var(--entry-muted);word-break:keep-all}
#home.entryLanding .floatStart{position:static!important;inset:auto!important;transform:none!important;display:flex!important;flex-wrap:wrap;justify-content:flex-start;gap:10px;width:auto!important;background:none!important;box-shadow:none!important;border:0!important;backdrop-filter:none;padding:0!important;margin:0!important}
#home.entryLanding .floatStart .startBtn{display:flex;align-items:center;justify-content:space-between;gap:30px;height:54px;min-width:220px;padding:14px 22px!important;border:1px solid #111!important;border-radius:8px!important;background:#111!important;color:#fff!important;font:650 15px var(--entry-font)!important}
#home.entryLanding .floatStart .resume{height:54px;max-width:100%;padding:12px 18px;border:1px solid var(--entry-line);border-radius:8px;background:var(--entry-paper);color:var(--entry-ink);font-size:13px}
.entrySaveNote{font-size:12px;line-height:1.7;color:var(--entry-muted);margin:14px 0 0}.entrySaveNote a{color:inherit;text-underline-offset:3px}
.entryHeroVisual{position:relative;margin:0;min-width:0}.entryHeroVisual>img{display:block;width:100%;max-height:510px;object-fit:cover;border-radius:16px}.entryHeroVisual figcaption{position:absolute;left:26px;right:26px;bottom:24px;color:#eff2e8;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;font-size:12px;line-height:1.7}.entryHeroVisual figcaption small{font-size:10px;color:#bdcbb9}.entryHeroVisual figcaption b{font-size:13px;font-weight:500}.entryVisualTag{letter-spacing:.12em;font-size:10px}
.entryStrip{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid var(--entry-line);border-bottom:1px solid var(--entry-line);font-size:12px;color:var(--entry-muted)}.entryStrip b{color:var(--entry-ink);font-weight:600}
.entrySection{padding:64px 0}.entrySectionHead{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:26px}.entrySection h2{font:650 26px/1.5 var(--entry-font);letter-spacing:-.055em;margin:0;color:var(--entry-ink)}.entrySectionHead>a{font-size:12px;color:var(--entry-muted);text-decoration:none}
.entryFeatures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entryFeature{padding:22px;background:var(--entry-paper);border:1px solid var(--entry-line);border-radius:12px}.entryFeature>span{font-size:12px;color:var(--entry-accent);font-variant-numeric:tabular-nums}.entryFeature h3{font-size:16px;letter-spacing:-.025em;margin:14px 0 9px}.entryFeature p{font-size:14px;line-height:1.85;color:var(--entry-muted);margin:0;word-break:keep-all}
.entryHow{background:var(--entry-paper);border:1px solid var(--entry-line);border-radius:12px;padding:30px;display:grid;grid-template-columns:.75fr 1.25fr;gap:36px}.entryHow h2{font-size:24px}.entryHow p{font-size:13px;line-height:1.8;color:var(--entry-muted)}.entrySteps{display:grid;gap:16px;margin:0;padding:0;list-style:none}.entrySteps li{display:flex;gap:14px;align-items:baseline;font-size:14px;line-height:1.8}.entrySteps li>span{font-size:11px;color:var(--entry-accent);flex:none}.entrySteps b{font-weight:600}.entrySteps small{display:block;font-size:12px;color:var(--entry-muted)}
.entryFaq{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;margin-top:28px}.entryFaq article{padding:22px;background:var(--entry-paper);border:1px solid var(--entry-line);border-radius:12px}.entryFaq h3{font-size:14px;font-weight:600;margin:0 0 8px}.entryFaq p{font-size:13px;color:var(--entry-muted);line-height:1.8;margin:0}.entryBottomTools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;border-top:1px solid var(--entry-line);font-size:12px;color:var(--entry-muted)}.entryBottomTools button{font:inherit;background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.entryBottomTools .cloudEntry{display:none}
.siteFooter{border-top:1px solid var(--entry-line);padding:26px 0 36px;color:var(--entry-muted);font:12px/1.8 var(--entry-font)}.siteFooter nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:16px}.siteFooter a{color:inherit;text-decoration:none}.siteFooter p{margin:6px 0}.siteFooter strong{font-weight:600;color:var(--entry-ink)}
.entryLanding button:focus-visible,.entryLanding a:focus-visible,.sitePage a:focus-visible,#birthScreen button:focus-visible{outline:3px solid #8ac7b9;outline-offset:4px}
.entryNav .themeModeButton{min-width:36px;min-height:36px;background:transparent;border:1px solid var(--entry-line);color:var(--entry-ink);border-radius:6px}
#birthScreen:not(.hide){display:block;background:var(--entry-bg)!important;color:var(--entry-ink)!important;min-height:100dvh;overflow:auto}
#birthScreen .birthOverview{width:min(1040px,calc(100% - 64px));padding:0 0 40px;margin:0 auto;font-family:var(--entry-font)!important}
#birthScreen .birthOverview>header{display:flex;align-items:center;justify-content:space-between;min-height:82px;border-bottom:1px solid var(--entry-line);gap:16px;color:var(--entry-muted);font-size:12px;padding:0}
#birthScreen .birthOverview>header button{border:0;background:none!important;color:var(--entry-muted)!important;padding:10px 0;font:13px var(--entry-font);box-shadow:none!important}
.birthOpening{padding:36px 0 26px;display:flex;justify-content:space-between;align-items:end;gap:20px}.birthOpening h2{font-size:28px;letter-spacing:-.05em;margin:0 0 6px}.birthOpening p{font-size:13px;color:var(--entry-muted);margin:0}.birthOpening>span{font-size:11px;color:var(--entry-accent);letter-spacing:.12em}
.birthDocument{display:grid;grid-template-columns:1.2fr .8fr;border:1px solid var(--entry-line);background:var(--entry-paper);border-radius:14px;overflow:hidden;min-height:460px}
.birthIdentity{padding:38px 40px}.birthDocumentTop{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:var(--entry-muted);margin-bottom:30px}.birthDocumentSeal{padding:5px 9px;border:1px solid var(--entry-line);border-radius:4px;color:var(--entry-accent);font-size:10px}
#birthScreen .birthOverview h1{font-size:42px!important;line-height:1.3!important;letter-spacing:-.06em;margin:0 0 8px!important;color:var(--entry-ink)!important}.birthIdentitySub{font-size:13px;line-height:1.6;color:var(--entry-muted);margin:0 0 28px}
.birthDetails{margin:0;display:grid;grid-template-columns:100px 1fr;gap:16px 20px;font-size:14px;line-height:1.7}.birthDetails dt{color:var(--entry-muted)}.birthDetails dd{margin:0;color:var(--entry-ink);min-width:0;word-break:keep-all}.birthDetails small{display:block;font-size:11px;color:var(--entry-muted);margin-top:3px}.birthLocation{background:#f0f3f1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--entry-line);padding:18px 20px 22px;min-width:0}.birthLocation .birthplaceMap{width:100%;height:300px}.birthLocation figcaption{font-size:12px;line-height:1.8;text-align:center;color:var(--entry-muted)}.birthLocation figcaption small{display:block;font-size:10px;color:var(--entry-muted)}
.birthStartRow{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 0}.birthStartRow p{margin:0;color:var(--entry-muted);font-size:13px;line-height:1.8}.birthStartRow button{flex:none;border:0;border-radius:8px;background:#111;color:#fff;padding:16px 24px;min-width:220px;display:flex;justify-content:space-between;gap:30px;font:650 15px var(--entry-font);min-height:54px}.birthSmallPrint{padding-top:16px;border-top:1px solid var(--entry-line);font-size:11px;line-height:1.8;color:var(--entry-muted)}.birthSmallPrint a{color:inherit}
body.dark .birthLocation{background:var(--entry-paper)}body.dark .birthLocation figcaption{color:var(--entry-muted)}
.sitePage{margin:0;background:var(--entry-bg);color:var(--entry-ink);font:15px/1.85 var(--entry-font)}.siteArticle{width:min(760px,100%);padding:56px 0 64px}.siteArticle .entryEyebrow{margin-bottom:14px}.siteArticle h1{font-size:38px;line-height:1.35;letter-spacing:-.06em;margin:0 0 18px}.siteArticle>.siteIntro{font-size:17px;color:var(--entry-muted);margin-bottom:38px;word-break:keep-all}.siteArticle h2{font-size:21px;line-height:1.5;letter-spacing:-.035em;margin:38px 0 12px}.siteArticle h3{font-size:16px;margin:22px 0 8px}.siteArticle p,.siteArticle li{word-break:keep-all;overflow-wrap:anywhere}.siteArticle a{color:var(--entry-accent);text-underline-offset:3px}.siteArticle li+li{margin-top:9px}.siteArticle details{padding:18px 0;border-bottom:1px solid var(--entry-line)}.siteArticle summary{cursor:pointer;font-weight:600}.siteArticle table{border-collapse:collapse;width:100%;font-size:14px}.siteArticle th,.siteArticle td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--entry-line)}.siteCallout{background:var(--entry-paper);border:1px solid var(--entry-line);border-radius:10px;padding:18px 22px;font-size:14px}.sitePlayLink{display:inline-block!important;background:#111;color:#fff!important;text-decoration:none;border-radius:7px;padding:11px 20px;font-size:14px}
@media(max-width:760px){.entryShell,.siteShell{width:calc(100% - 36px)}.entryNav,.siteNav{min-height:68px;gap:12px}.entryBrand{font-size:17px}.entryNavLinks{gap:14px}.entryNavLinks a{font-size:12px}.entryNavLinks a:nth-child(3){display:none}.entryHero{grid-template-columns:1fr;gap:28px;padding:36px 0;min-height:0}.entryHero h1{font-size:clamp(34px,7vw,48px);margin-bottom:18px}.entryHero .entryEyebrow{margin-bottom:16px}.entryLead{font-size:14px;line-height:1.8;margin-bottom:24px;max-width:100%}#home.entryLanding .floatStart{flex-direction:column}#home.entryLanding .floatStart button{width:100%;min-width:0!important}.entryHeroVisual{max-width:460px;width:100%;justify-self:center}.entryHeroVisual>img{max-height:320px;object-position:center 42%;border-radius:12px}.entryHeroVisual figcaption{bottom:18px;left:20px;right:20px}.entryStrip{flex-wrap:wrap;justify-content:flex-start;gap:10px 20px;font-size:11px;padding:18px 0}.entrySection{padding:36px 0}.entrySection h2{font-size:23px}.entryFeatures{grid-template-columns:1fr;gap:23px}.entryFeature{display:grid;grid-template-columns:25px 1fr;column-gap:12px}.entryFeature>span{grid-row:1/3;align-self:start;margin-top:4px}.entryFeature h3{margin:0 0 6px}.entryFeature p{grid-column:2;font-size:13px}.entryHow{grid-template-columns:1fr;gap:18px;padding:22px}.entryFaq{grid-template-columns:1fr;gap:22px}.entrySectionHead{gap:12px}.entrySectionHead>a{white-space:nowrap}.entryBottomTools{padding:22px 0}.siteFooter{font-size:11px}.siteFooter nav{gap:8px 14px}#birthScreen .birthOverview{width:calc(100% - 32px);padding-bottom:24px}#birthScreen .birthOverview>header{min-height:64px}.birthOpening{padding:26px 0 18px}.birthOpening h2{font-size:25px}.birthOpening>span{display:none}.birthDocument{grid-template-columns:1fr}.birthIdentity{padding:24px}.birthDocumentTop{margin-bottom:22px}#birthScreen .birthOverview h1{font-size:34px!important}.birthDetails{grid-template-columns:76px 1fr;gap:13px 12px;font-size:13px}.birthIdentitySub{margin-bottom:24px}.birthLocation{border-left:0;border-top:1px solid var(--entry-line);display:grid;grid-template-columns:100px 1fr;padding:12px 20px;gap:18px}.birthLocation .birthplaceMap{height:130px}.birthLocation figcaption{text-align:left}.birthStartRow{flex-direction:column;align-items:stretch;gap:16px;padding:20px 0}.birthStartRow p{font-size:12px}.birthStartRow button{width:100%}.siteArticle{padding:36px 0}.siteArticle h1{font-size:30px}.siteArticle>.siteIntro{font-size:15px}.siteArticle h2{font-size:20px}.siteArticle table{font-size:12px}.siteArticle th,.siteArticle td{padding:9px 6px}}

/* Use the gameplay button treatment throughout the entry screens. */
#home.entryLanding .floatStart .startBtn:hover,.birthStartRow button:hover,.sitePlayLink:hover{background:#303030!important;border-color:#303030!important}#home.entryLanding .floatStart .startBtn,.birthStartRow button{font-weight:700;box-shadow:none;cursor:pointer}.entryLanding *,.sitePage *,#birthScreen .birthOverview *{box-sizing:border-box}.entryHero h1{letter-spacing:-.055em}.birthDocumentSeal{color:var(--entry-muted)}

/* A colored first impression of the household, using the existing wealth model. */
.birthFamilyStart{--family-color:#447960;--family-tint:#f0f6f2;--family-outline:#d4e5d9;padding:18px 20px;margin-top:24px;background:var(--family-tint);border:1px solid var(--family-outline);border-radius:12px;color:var(--entry-ink)}
.birthFamilyStart[data-tier=gold]{--family-color:#89651c;--family-tint:#fcf6e8;--family-outline:#ead9a9}
.birthFamilyStart[data-tier=blue]{--family-color:#426c96;--family-tint:#eef4fa;--family-outline:#d1e0ef}
.birthFamilyStart[data-tier=slate]{--family-color:#5c6e7e;--family-tint:#f0f3f6;--family-outline:#d8e0e7}
.birthFamilyStart[data-tier=warm]{--family-color:#946044;--family-tint:#faf1eb;--family-outline:#ebd8cb}
.birthFamilyStart>header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;line-height:1.5;color:var(--entry-muted)}
.birthFamilyStart>header>b{font-size:11px;font-weight:650;color:var(--family-color)}
.birthFamilyRank{display:block;font-size:clamp(25px,3vw,33px);font-weight:800;letter-spacing:-.045em;line-height:1.3;margin:10px 0 8px;color:var(--family-color)}
.birthFamilyMoney{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px 16px;margin:0;font-size:12px;line-height:1.6;color:var(--entry-muted)}
.birthFamilyMoney>b{font-size:15px;font-weight:650;color:var(--entry-ink)}
.birthFamilyRail{height:5px;background:var(--family-outline);border-radius:5px;overflow:hidden;margin:14px 0 8px}.birthFamilyRail>i{display:block;height:100%;border-radius:inherit;background:var(--family-color)}
.birthFamilyStart>small{font-size:10px;line-height:1.5;color:var(--entry-muted)}
body.dark .birthFamilyStart{background:var(--entry-paper);border-color:var(--family-color);--family-outline:#3a4542}
body.dark .birthFamilyStart[data-tier=gold]{--family-color:#dec17a}body.dark .birthFamilyStart[data-tier=blue]{--family-color:#91b5da}body.dark .birthFamilyStart[data-tier=green]{--family-color:#92c1a6}body.dark .birthFamilyStart[data-tier=slate]{--family-color:#a7bacb}body.dark .birthFamilyStart[data-tier=warm]{--family-color:#d9ac8c}
@media(max-width:760px){.birthFamilyStart{margin-top:20px;padding:16px}.birthFamilyRank{font-size:27px}.birthFamilyMoney>b{font-size:14px}}
