/* Intent: a small life RPG, with a village window and readable dialogue.
   Cream cartridge paper, green controls, brick roofs; 4px spacing rhythm. */
@font-face{font-family:NeoLife;src:url("fonts/neodgm.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#eee8d8;--sheet:#faf6eb;--ink:#303b35;--muted:#667065;--faint:#788174;--line:#c4c7b3;--accent:#ad5c45;--felt:#e2e6d7;--warm:#e9e4d4;--forest:#4c6655;--pressed:#354a3c;--radius:4px;--pixel:NeoLife,"Malgun Gothic",monospace;font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-underline-offset:4px}svg{flex-shrink:0}button svg,a svg{vertical-align:middle}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:#d6dfca}
h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--pixel);font-weight:400;line-height:1.5;letter-spacing:0;word-break:keep-all}h1{font-size:40px}h2{font-size:28px}h3{font-size:18px}.muted{color:var(--muted)}.small{font-size:12px}.skip{position:fixed;top:-90px;left:16px;z-index:20;background:var(--sheet);padding:12px}.skip:focus{top:16px}
.site-header{max-width:1104px;margin:auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-family:var(--pixel);font-size:24px;font-weight:400;text-decoration:none}.brand svg{width:28px;height:28px}.header-links{display:flex;align-items:center;gap:24px;font-size:12px}.header-links a{color:var(--muted)}.text-button{background:transparent;padding:8px 0;font-size:inherit;min-height:36px;border-bottom:1px solid transparent}.text-button:hover{border-color:var(--forest)}main{max-width:1040px;margin:0 auto;padding:40px 32px 64px;min-height:75vh}.eyebrow{font-family:var(--pixel);font-size:12px;display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--muted)}.eyebrow:before{content:"";height:5px;width:5px;background:var(--accent)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 20px;border-radius:var(--radius);background:var(--forest);color:var(--sheet);font-family:var(--pixel);font-size:16px;line-height:1.5;text-decoration:none;border:1px solid var(--pressed);box-shadow:0 3px 0 var(--pressed);transition:background .12s,transform .12s,box-shadow .12s}.btn:hover{background:var(--pressed)}.btn:active{transform:translateY(3px);box-shadow:none}.btn.secondary{background:var(--sheet);color:var(--ink);border-color:var(--line);box-shadow:0 3px 0 var(--line)}.btn.secondary:hover{background:var(--felt)}.btn.full{width:100%}.button-row{display:flex;gap:12px;flex-wrap:wrap}.lead{font-size:15px;line-height:1.9;color:var(--muted);max-width:440px}
.home-hero{display:grid;grid-template-columns:1fr 1.08fr;gap:40px;align-items:center;padding:24px 0 40px}.home-hero h1{font-size:40px;margin-bottom:20px}.home-hero .lead{margin-bottom:28px}.home-hero .button-row .btn{flex:1}.home-art-wrap{padding:8px;border:1px solid var(--line);background:var(--sheet);border-radius:4px;position:relative}.village-art{display:block;width:100%;height:auto;image-rendering:pixelated}.village-caption{display:flex;justify-content:space-between;gap:12px;padding:8px 8px 12px;font-family:var(--pixel);font-size:12px;color:var(--muted)}.village-caption span:last-child{color:var(--forest)}.hero-caption{text-align:center;font-family:var(--pixel);font-size:12px;color:var(--muted);padding:16px 4px 8px}.home-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;margin-top:20px}.resume-note{margin-top:16px;font-size:12px;padding:12px;border:1px solid var(--line);background:var(--felt)}.legacy-link{font-size:12px;display:block;margin-top:16px}.rules-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule{display:flex;gap:12px}.rule-no{font-family:var(--pixel);font-size:14px;color:var(--forest);padding-top:3px}.rule h3{font-size:16px}.rule p{font-size:12px;color:var(--muted);margin-top:8px}.home-details{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:48px}.home-details h2{font-size:24px;margin:12px 0 16px}.home-details .lead{font-size:14px}.sample-note{background:var(--felt);padding:20px;border:1px solid var(--line);margin-top:24px;border-radius:4px}.sample-note p{font-family:var(--pixel);font-size:16px;margin:8px 0}.faq-title{font-size:16px;margin-bottom:12px}
details{border-bottom:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-size:13px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px;min-height:24px}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-family:var(--pixel);font-size:16px;font-weight:400}details[open] summary:after{content:"−"}details p{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.9}footer{max-width:1040px;margin:auto;border-top:1px solid var(--line);padding:24px 32px;display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}
.setup{max-width:584px;margin:auto}.setup-portrait{width:64px;height:auto;margin-bottom:20px;border:1px solid var(--line);padding:4px;background:var(--sheet)}.setup h1{font-size:28px;margin-bottom:8px}.setup-intro{font-size:14px;margin-bottom:28px}.setup-form{border:1px solid var(--line);background:var(--sheet);padding:28px;border-radius:4px}.field-label{font-family:var(--pixel);font-size:16px;display:block;margin-bottom:8px}.field-note{font-size:12px;color:var(--muted);margin-bottom:16px}input[type=text]{width:100%;max-width:100%;background:var(--warm);border:1px solid var(--line);border-radius:4px;padding:12px 16px;min-height:48px;color:var(--ink)}input::placeholder{color:var(--faint)}fieldset{border:0;margin:24px 0 0;padding:0;min-width:0}legend{padding:0;margin-bottom:12px;font-family:var(--pixel);font-size:16px}.trait-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.start-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.option{display:block;cursor:pointer;border:1px solid var(--line);border-radius:4px;padding:16px;background:var(--sheet)}.option input{accent-color:var(--forest);width:16px;height:16px;margin:0 8px 0 0;vertical-align:middle}.option:has(input:checked){border-color:var(--forest);background:var(--felt)}.option strong{font-size:13px}.option p{font-size:12px;color:var(--muted);margin-top:8px}.option .bonus{font-size:11px;margin-top:8px;display:block}.setup-options{margin-top:20px}.setup-options summary{color:var(--muted);font-size:12px;font-weight:400}.setup-submit{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px}.error{color:var(--accent);font-size:13px;margin-top:12px}.save-warning{padding:12px 16px;background:var(--warm);border-left:3px solid var(--accent);margin-bottom:16px;font-size:13px}
.play-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.player-identity{display:flex;align-items:center;gap:16px;min-width:0}.player-identity>.pixel-portrait{width:48px;height:56px;border:1px solid var(--line);padding:4px;background:var(--sheet)}.play-top h1{font-size:24px;overflow-wrap:anywhere}.play-top .eyebrow{margin-bottom:0}.play-top .small{font-size:11px}.play-top>button{flex-shrink:0}.play-layout{display:grid;grid-template-columns:192px minmax(0,1fr);gap:24px;align-items:start}.journal{border:1px solid var(--line);padding:20px 16px;border-radius:4px;background:var(--felt)}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.stat-name{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.stat-name svg{width:14px;height:14px}.stat strong{display:block;font-family:var(--pixel);font-weight:400;font-size:24px;line-height:1.5;margin-top:4px}.wallet{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.wallet>.small{font-size:10px}.wallet strong{font-family:var(--pixel);font-size:20px;font-weight:400;display:block;line-height:1.6;overflow-wrap:anywhere;margin-top:4px}.debt{color:var(--accent)}.journal-actions{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.journal-actions .text-button{font-family:var(--pixel);font-size:12px;border:1px solid var(--line);border-radius:4px;min-height:40px;background:var(--sheet);padding:8px 0}.journal-actions .text-button:hover{background:var(--paper);border-color:var(--forest)}.family-brief{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:16px;overflow-wrap:anywhere}
.play-body{min-width:0}.life-window{border:1px solid var(--line);border-radius:4px 4px 0 0;padding:6px;background:var(--sheet);overflow:hidden}.life-window .village-art{max-height:184px;object-fit:cover;object-position:50% 75%}.scene,.receipt{background:var(--sheet);border:1px solid var(--line);border-top:0;border-radius:0 0 4px 4px;padding:24px}.scene-label,.age-tag{font-family:var(--pixel);font-size:12px;color:var(--muted);margin-bottom:12px}.scene h2{font-size:24px;line-height:1.5;margin-bottom:12px}.scene>p:last-child{font-size:14px;line-height:1.85;word-break:keep-all;color:var(--muted)}.quiet-risk{font-size:11px;color:var(--muted);margin-top:12px}.quiet-risk strong{color:var(--ink);font-weight:600}.quiet-risk span{font-size:10px}
.choices{display:grid;grid-template-columns:1fr;gap:8px;margin-top:20px}.pick-card{position:relative;display:flex;align-items:center;text-align:left;border:1px solid var(--line);border-radius:4px;background:var(--sheet);padding:16px 20px 16px 52px;min-height:84px;color:var(--ink);transition:background .12s,border-color .12s,transform .12s}.pick-card:hover,.pick-card:focus-visible{border-color:var(--forest);background:var(--felt)}.pick-card:active{transform:translateY(2px);background:var(--warm)}.pick-copy{display:block;width:100%}.pick-copy>strong{display:block;font-family:var(--pixel);font-size:16px;font-weight:400;line-height:1.5;word-break:keep-all}.card-number{font-family:var(--pixel);font-size:10px;color:var(--muted);position:absolute;left:20px;top:16px}.pick-description{display:block;color:var(--muted);font-size:12px;line-height:1.8;margin-top:4px;word-break:keep-all}.pick-cost{display:block;font-size:11px;margin-top:6px;color:var(--muted);font-variant-numeric:tabular-nums}.pick-arrow{position:absolute;left:16px;top:36px;color:var(--forest);opacity:0;transition:opacity .12s}.pick-arrow svg{width:16px;height:16px}.pick-card:hover .pick-arrow,.pick-card:focus-visible .pick-arrow{opacity:1}.pick-note{font-size:11px;color:var(--muted);text-align:center;margin-top:12px}.finance-detail{margin-top:16px}.finance-detail summary,.receipt-details summary,.inherit-rules summary{font-size:12px;font-weight:400;color:var(--muted)}.finance-table{font-size:12px;margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.finance-col{padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--sheet)}.finance-col h4{font-size:12px;margin-bottom:12px}.kv{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px}.kv span:first-child{color:var(--muted)}.kv span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.kv.total{border-top:1px solid var(--line);padding-top:8px;margin-top:12px;font-weight:600}.effects{display:flex;gap:8px 12px;flex-wrap:wrap;font-size:11px;font-variant-numeric:tabular-nums}.effect{white-space:nowrap}.effect.negative{color:var(--accent)}.finance-col .effects{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.paper-hole{display:none}.receipt h2{font-size:24px;margin-bottom:12px}.receipt .outcome{font-size:15px;line-height:1.9;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:16px}.receipt-deltas{display:flex;gap:8px 16px;flex-wrap:wrap;font-size:12px}.receipt-deltas .effect{font-family:var(--pixel);font-size:12px;background:var(--felt);padding:4px 8px;border-radius:2px}.receipt .skill-note{font-size:12px;color:var(--muted);padding-top:12px;margin-top:16px;border-top:1px solid var(--line)}.receipt-details{margin-top:16px;border-bottom:0;padding-bottom:0}.receipt-details>.kv:first-of-type{margin-top:20px}.receipt-bottom{margin-top:16px}.receipt-bottom .btn{width:100%}.family-notices,.life-end,.lineage-note{border-top:1px solid var(--line);margin-top:20px;padding-top:16px;font-size:13px;line-height:1.8}.family-notices h3,.lineage-note h3{font-size:16px;margin-bottom:12px}.life-end p{margin-top:12px;color:var(--muted)}.life-end h3{font-size:18px}.inherit-note{border-left:3px solid var(--forest);background:var(--felt);padding:12px 16px;margin:0 0 16px;font-size:12px;line-height:1.8}
.result-wrap{max-width:736px;margin:auto}.result-heading{text-align:center;margin-bottom:28px}.result-heading .eyebrow{justify-content:center}.result-heading h1{font-size:32px;overflow-wrap:anywhere}.result-heading p{font-size:13px;color:var(--muted);margin-top:12px}.result-sheet{background:var(--sheet);border:1px solid var(--line);padding:32px;border-radius:4px}.ending-top{display:flex;align-items:center;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.ending-art{width:96px;color:var(--forest)}.ending-top .small{color:var(--muted);margin-bottom:8px}.ending-top h2{font-size:28px;margin-bottom:12px}.ending-top .phrase{font-size:14px;line-height:1.8;word-break:keep-all}.result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.result-stat{display:flex;flex-direction:column;gap:6px;font-size:12px}.result-stat strong{font-family:var(--pixel);font-size:24px;font-weight:400}.result-stat .small{font-size:10px;color:var(--muted)}.result-wallet{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.result-wallet strong{display:block;font-family:var(--pixel);font-size:24px;font-weight:400;margin-top:4px}.result-summary{margin:24px 0;font-size:13px;line-height:1.9;color:var(--muted)}.result-family{font-size:12px;margin-top:20px;color:var(--muted)}.highlights h3{font-size:16px;margin-bottom:20px}.moment{display:flex;gap:16px;align-items:flex-start;border-left:1px solid var(--line);padding:0 0 20px 16px;position:relative;margin-left:4px}.moment:before{content:"";position:absolute;left:-3px;top:7px;width:5px;height:5px;background:var(--forest)}.moment:last-child{padding-bottom:0;border-left-color:transparent}.moment small{color:var(--muted);min-width:32px;font-family:var(--pixel);font-size:12px;padding-top:2px}.moment p{font-size:13px}.heir-section{margin-top:24px;padding:24px;border:1px solid var(--line);background:var(--felt);border-radius:4px}.heir-section h2{font-size:24px;margin:8px 0 12px}.heir-section>p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:16px}.heir-list{display:grid;gap:8px;margin:20px 0}.heir-card{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;border:1px solid var(--line);padding:16px;background:var(--sheet);border-radius:4px;color:var(--ink)}.heir-card:hover{border-color:var(--forest)}.heir-card strong{display:block;font-family:var(--pixel);font-size:20px;font-weight:400;margin-bottom:4px}.heir-card small{display:block;color:var(--muted);font-size:11px}.heir-card>span:last-child{display:flex;align-items:center;gap:8px;font-family:var(--pixel);font-size:12px;flex-shrink:0}.inherit-rules{border-bottom:0;padding-bottom:0}.result-actions{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.result-actions.shared{grid-template-columns:1fr}.result-more{display:flex;justify-content:center;gap:24px;margin-top:20px;font-size:12px}.share-note{font-size:11px;text-align:center;color:var(--muted);margin-top:16px}.related{border-top:1px solid var(--line);margin-top:36px;padding-top:24px}.related h2{font-size:16px;margin-bottom:16px}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.related a{border:1px solid var(--line);border-radius:4px;padding:12px 16px;text-decoration:none;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.ad-area{margin-top:40px;max-width:760px}.ad-area .small{font-size:10px;color:var(--muted);display:block;text-align:center}.ad-area ins{display:block}
dialog{border:1px solid var(--line);background:var(--sheet);color:var(--ink);border-radius:4px;padding:24px;max-width:640px;width:calc(100% - 32px);max-height:85dvh;overflow:auto}dialog::backdrop{background:#303b3580}.dialog-head{position:sticky;top:-24px;z-index:5;background:var(--sheet);padding:8px 0 16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.dialog-head h2{font-size:24px}.icon-button{background:var(--felt);border:1px solid var(--line);border-radius:4px;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0}.history-list{list-style:none;margin:0;padding:0}.history-list li{padding:20px 0;border-bottom:1px solid var(--line)}.history-list h3{font-size:16px;margin:8px 0}.history-list p{font-size:13px;color:var(--muted)}.history-list .effects{padding-top:12px}.skill-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.modal-copy{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:20px}.family-partner{border:1px solid var(--line);padding:16px;border-radius:4px;display:flex;flex-direction:column;gap:8px;margin-bottom:24px;background:var(--felt)}.family-partner span{font-size:12px;color:var(--muted)}.family-label{font-size:16px;margin-bottom:16px}.family-tree,.family-tree ul{list-style:none;padding:0;margin:0}.family-tree ul{margin:12px 0 0 8px;padding-left:16px;border-left:1px solid var(--line)}.family-person{margin-bottom:16px}.family-person>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px}.family-person strong{font-size:14px}.family-person span{font-size:12px;color:var(--muted)}.family-person p{margin-top:6px}.family-forms{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.family-form{margin-bottom:20px}.family-form label{display:block;font-size:14px;font-weight:600;margin-bottom:12px}.family-form input{margin-bottom:12px}.family-form .btn{width:100%}.sources a{font-weight:600}.sources p{margin-bottom:16px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100;background:var(--ink);color:var(--sheet);font-size:13px;padding:12px 20px;border-radius:4px;width:max-content;max-width:calc(100vw - 32px);text-align:center}.toast:empty{display:none}.invalid{max-width:560px;margin:48px auto;text-align:center}.invalid h1{font-size:28px;margin-bottom:20px}.invalid p{color:var(--muted);margin-bottom:24px}.reveal{animation:appear .16s ease-out}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.home-hero{gap:24px}.home-hero h1{font-size:32px}.play-layout{grid-template-columns:168px minmax(0,1fr);gap:16px}.journal{padding:16px 12px}.journal-actions .text-button{font-size:11px}.finance-table{grid-template-columns:1fr}}
@media(max-width:760px){.site-header{padding:16px 20px}.brand{font-size:20px;gap:8px}.brand svg{width:24px;height:24px}.header-links{gap:16px;font-size:11px}main{padding:28px 20px 48px}.home-hero{grid-template-columns:1fr;gap:28px;padding:0 0 32px}.home-art-wrap{grid-row:1}.home-hero>div:first-child{text-align:center}.home-hero .eyebrow{justify-content:center}.home-hero h1{font-size:32px;margin-bottom:16px}.home-hero .lead{font-size:14px;max-width:100%;margin-bottom:24px}.home-note{justify-content:center;font-size:10px;gap:6px}.hero-caption{padding-top:12px;font-size:11px}.rules-strip{gap:12px;padding:20px 0}.rule{display:block}.rule-no{display:block;margin-bottom:8px}.rule h3{font-size:14px}.rule p{font-size:11px}.home-details{grid-template-columns:1fr;gap:32px;margin-top:32px}.home-details h2{font-size:24px}.setup h1{font-size:24px}.setup-form{padding:24px 20px}.setup-submit{display:block}.setup-submit .btn{width:100%;margin-top:16px}.start-grid{grid-template-columns:1fr}.play-top{gap:12px;margin-bottom:16px}.player-identity{gap:12px}.player-identity>.pixel-portrait{width:40px;height:48px}.play-top h1{font-size:20px}.play-layout{display:flex;flex-direction:column;gap:20px}.journal{width:100%;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px 16px}.stats-grid{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat strong{font-size:20px;margin-top:0}.stat-name{font-size:10px;gap:4px}.stat-name svg{width:12px;height:12px}.wallet{border:0;margin:0;padding:0}.wallet>.small{font-size:10px}.wallet strong{font-size:20px;margin-top:0}.journal-actions{margin:0;align-items:center;gap:4px}.journal-actions .text-button{font-size:12px;min-width:36px;padding:8px 4px;min-height:40px}.family-brief{grid-column:1/-1;margin:0;padding-top:8px;font-size:10px}.play-body{width:100%}.life-window{padding:4px}.life-window .village-art{max-height:128px}.scene,.receipt{padding:20px}.scene-label,.age-tag{font-size:10px;margin-bottom:8px}.scene h2,.receipt h2{font-size:20px;margin-bottom:8px}.scene>p:last-child{font-size:13px}.choices{margin-top:16px;gap:8px}.pick-card{padding:14px 16px 14px 44px;min-height:76px}.pick-copy>strong{font-size:16px}.card-number{left:16px;top:14px}.pick-arrow{left:12px;top:34px}.pick-description{font-size:11px}.pick-cost{font-size:10px}.pick-note{font-size:10px}.quiet-risk{font-size:10px}.quiet-risk span{display:none}.receipt .outcome{font-size:14px;padding-bottom:16px;margin-bottom:12px}.receipt-deltas .effect{font-size:11px}.result-heading h1{font-size:24px}.result-sheet{padding:24px 20px}.ending-top{gap:16px}.ending-art{width:64px}.ending-top h2{font-size:24px}.ending-top .phrase{font-size:12px}.result-stats{gap:8px}.result-stat{font-size:11px}.result-stat strong{font-size:20px;white-space:nowrap}.result-stat strong .small{display:block;margin-top:4px}.result-wallet{display:block}.result-wallet .muted{display:block;margin-top:8px}.result-actions{grid-template-columns:1fr;gap:12px}.related-links{grid-template-columns:1fr}.heir-section{padding:20px}.heir-section h2{font-size:20px}.heir-card{align-items:flex-start;flex-direction:column;gap:12px}.heir-card>span:last-child{align-self:flex-end}.result-more{gap:16px;font-size:11px}.family-person>div{gap:4px 12px}.family-tree ul{padding-left:12px;margin-left:4px}.dialog-head h2{font-size:20px}dialog{padding:20px}.dialog-head{top:-20px}footer{display:block;padding:20px;font-size:10px}footer>div{margin-top:8px}.finance-detail{margin-top:12px}.inherit-note{font-size:11px}.skill-grid{grid-template-columns:1fr}}
@media(max-width:380px){.site-header{padding:16px}.header-links{gap:12px}.brand{font-size:18px}main{padding-left:16px;padding-right:16px}.home-hero h1{font-size:28px}.home-hero .button-row{flex-direction:column}.home-note{font-size:9px}.village-caption{font-size:10px}.trait-grid{grid-template-columns:1fr}.player-identity{gap:8px}.play-top h1{font-size:18px}.play-top>button{font-size:10px}.journal{padding:12px;gap:8px 12px}.stat-name svg{display:none}.wallet strong{font-size:18px}.journal-actions .text-button{font-size:11px;min-width:32px}.scene,.receipt{padding:16px}.scene h2,.receipt h2{font-size:20px}.result-sheet{padding:20px 16px}.ending-top{display:block}.ending-art{width:56px;margin-bottom:12px}.result-stat strong{font-size:18px}.setup-form{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.setup-portrait .pixel-portrait{display:block;width:100%;height:auto}
@media(max-width:760px){.life-window .village-art{height:120px;max-height:none}}
@media(max-width:760px){.home-hero .button-row{flex-direction:column}.rules-strip{grid-template-columns:1fr;gap:20px}.rule{display:flex;gap:16px}.rule-no{margin:0}.rule h3{font-size:16px}.rule p{font-size:12px;margin-top:4px}}
.sound-toggle{display:inline-flex;align-items:center;gap:6px;font-family:var(--pixel);font-size:12px;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--sheet)}.sound-toggle[aria-pressed=true]{color:var(--forest);border-color:var(--forest);background:var(--felt)}.sound-toggle:disabled{cursor:default;opacity:.5}@media(max-width:760px){.sound-toggle{width:40px;padding:8px;justify-content:center}.sound-toggle span{display:none}.header-links{gap:12px}}@media(max-width:380px){.header-links>a{display:none}}
/* v3.4: the person sheet, household ledger and save notebook share the same surfaces. */
.gender-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.gender-option { display:flex; align-items:center; gap:12px; padding:12px 16px; border:1px solid var(--line); border-radius:4px; cursor:pointer; background:var(--sheet); }
.gender-option:has(input:checked), .appearance-option:has(input:checked) { border-color:var(--forest); background:var(--felt); }
.gender-option input, .appearance-option input { accent-color:var(--forest); width:16px; height:16px; }
.gender-option .pixel-portrait { width:32px; height:44px; }
.gender-option strong { font-family:var(--pixel); font-size:16px; font-weight:400; }
.character-choice .field-note { margin:12px 0 0; }
.appearance-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.appearance-option { display:grid; place-items:center; gap:8px; border:1px solid var(--line); padding:12px 8px; cursor:pointer; background:var(--sheet); border-radius:4px; }
.appearance-option .pixel-portrait { width:32px; height:44px; }
.appearance-option span { font-size:11px; }
.play-controls { display:flex; gap:16px; flex-shrink:0; }
.play-controls button { display:flex; align-items:center; gap:6px; min-height:44px; }
.wallet-button { display:block; width:100%; text-align:left; color:var(--ink); background:transparent; }
.wallet-button:hover { color:var(--forest); }
.wallet-hint { display:block; font-size:10px; margin-top:4px; color:var(--muted); }
.save-status { display:flex; align-items:center; gap:6px; font-size:10px; color:var(--muted); padding-top:12px; margin-top:12px; border-top:1px solid var(--line); }
.journal-actions { grid-template-columns:1fr 1fr; gap:6px; }
.journal-actions button:last-child { grid-column:1/-1; }
.character-note { margin:0 0 16px; font-size:12px; color:var(--muted); }
.character-note button { font-size:12px; color:var(--ink); }
.life-window .village-art { display:block; width:100%; height:auto; max-height:224px; image-rendering:pixelated; }
.pixel-portrait { image-rendering:pixelated; }
.character-card { display:flex; align-items:center; gap:20px; border:1px solid var(--line); background:var(--felt); padding:20px; border-radius:4px; }
.character-card>.pixel-portrait { width:72px; height:98px; border:1px solid var(--line); padding:4px; background:var(--sheet); }
.character-card strong { font-family:var(--pixel); font-size:24px; font-weight:400; }
.character-card p { font-size:12px; margin-top:4px; }
.ability-section { margin:24px 0 0; }
.ability-section h3 { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 16px; margin-bottom:16px; font-size:20px; }
.ability-section h3 span { font-family:initial; font-size:11px; color:var(--muted); }
.ability-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 24px; }
.ability-row>div { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.ability-row strong { font-size:13px; font-weight:500; }
.ability-row span { font-family:var(--pixel); font-size:20px; }
.ability-row meter { appearance:none; display:block; width:100%; height:8px; margin:8px 0; border:0; background:var(--warm); border-radius:0; }
.ability-row meter::-webkit-meter-bar { border:0; border-radius:0; background:var(--warm); }
.ability-row meter::-webkit-meter-optimum-value { background:var(--forest); }
.ability-row meter::-moz-meter-bar { background:var(--forest); }
.ability-row p { color:var(--muted); font-size:11px; line-height:1.7; }
.skill-grid { gap:8px 24px; }
.skill-grid .kv { border-bottom:1px solid var(--line); padding:8px 0; }
.skill-grid small { color:var(--muted); font-weight:400; }
.specialty-list { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:16px; }
.specialty-item { border:1px solid var(--line); padding:12px; background:var(--warm); border-radius:4px; }
.specialty-item.active { border-color:var(--forest); background:var(--felt); }
.specialty-item strong { font-family:var(--pixel); font-size:15px; font-weight:400; }
.specialty-item p { color:var(--muted); font-size:11px; margin-top:6px; line-height:1.7; }
.specialty-unlock { padding:12px 16px; border:1px solid var(--forest); background:var(--felt); margin:16px 0; font-family:var(--pixel); font-size:14px; }
.family-person .pixel-portrait { width:28px; height:38px; align-self:center; }
.family-partner .pixel-portrait { width:40px; height:54px; }
.family-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.family-form label { font-weight:500; font-size:12px; }
select, input[type=number] { width:100%; min-height:44px; padding:8px 12px; border:1px solid var(--line); background:var(--warm); color:var(--ink); border-radius:4px; margin:8px 0 12px; }
select:focus-visible, meter:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.bank-balance { padding:20px; background:var(--felt); border:1px solid var(--line); border-radius:4px; }
.bank-balance>span { font-size:12px; color:var(--muted); }
.bank-balance>strong { font-family:var(--pixel); display:block; font-size:32px; font-weight:400; margin:4px 0 12px; }
.bank-balance p { font-size:12px; color:var(--muted); }
.cash-debt { display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid var(--line); padding:16px 0; gap:20px; }
.cash-debt div { display:flex; flex-direction:column; font-size:12px; gap:4px; }
.cash-debt span { color:var(--muted); }
.bank-subtitle { font-size:20px; margin:24px 0 8px; }
.bank-rows { margin-bottom:24px; }
.bank-rows .kv { padding:8px 0; font-size:12px; }
.bank-rows .kv>span:last-child { white-space:nowrap; }
.result-specialties { font-size:12px; color:var(--forest); margin-top:20px; }
.autosave-line { display:flex; justify-content:space-between; gap:16px; padding:12px 16px; border:1px solid var(--line); background:var(--felt); font-size:12px; border-radius:4px; }
.autosave-line strong { font-weight:500; text-align:right; }
.save-current { font-size:12px; color:var(--muted); margin:16px 0 12px; }
.save-slot { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; border-bottom:1px solid var(--line); }
.save-slot strong { font-family:var(--pixel); font-size:16px; font-weight:400; }
.save-slot p { margin-top:4px; font-size:11px; color:var(--muted); }
.save-slot>div:last-child { display:flex; gap:12px; flex-shrink:0; }
.save-slot button { font-size:12px; min-height:44px; }
.save-files { display:flex; gap:12px; margin:24px 0 16px; }
.save-files .btn { flex:1; font-size:14px; }
.load-confirm { margin-top:16px; }
.load-home { margin-top:12px; font-size:12px; color:var(--muted); }
@media(max-width:760px) {
  .gender-option { gap:8px; padding:12px; }
  .gender-option .pixel-portrait { width:28px; height:38px; }
  .play-controls { flex-direction:column; gap:0; }
  .play-controls button { min-height:32px; font-size:11px; padding:4px 0; }
  .play-controls button svg { width:14px; height:14px; }
  .player-identity>.pixel-portrait { width:44px; height:60px; padding:3px; }
  .journal { grid-template-columns:1fr; gap:12px; padding:16px; }
  .journal .wallet { display:grid; grid-template-columns:1fr auto; align-items:center; gap:4px 12px; width:100%; border-top:1px solid var(--line); padding-top:12px; }
  .wallet strong { grid-row:1/3; grid-column:2; font-size:22px; margin:0; }
  .wallet-hint { margin:0; }
  .journal-actions { grid-template-columns:1fr 1fr 1.5fr; gap:8px; }
  .journal-actions button:last-child { grid-column:auto; }
  .family-brief { margin:0; }
  .save-status { margin:0; padding:0; border:0; font-size:9px; }
  .life-window .village-art { height:136px; max-height:none; }
  .ability-grid { gap:16px; }
  .ability-row p { font-size:10px; }
  .character-card { padding:16px; gap:16px; }
  .character-card>.pixel-portrait { width:56px; height:76px; }
  .character-card strong { font-size:20px; }
  .skill-grid { grid-template-columns:1fr 1fr; gap:8px 16px; }
  .specialty-item { padding:10px; }
  .specialty-item strong { font-size:14px; }
  .bank-balance>strong { font-size:28px; }
  .save-files { flex-direction:column; }
  .save-slot { flex-direction:column; align-items:stretch; gap:4px; }
  .save-slot>div:last-child { justify-content:flex-end; }
  .autosave-line { font-size:11px; }
}
@media(max-width:380px) {
  .gender-option { gap:6px; padding:8px; }
  .appearance-option { padding:8px 4px; }
  .specialty-list { grid-template-columns:1fr; }
  .wallet strong { font-size:20px; }
}

.monthly-balance{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--felt);padding:12px 20px;margin-top:12px;border:1px solid var(--line);border-radius:4px;font-size:12px}.monthly-balance strong{font-family:var(--pixel);font-size:22px;font-weight:400}.skip{top:12px;transform:translateY(-200%)}.skip:focus{transform:none}

.legacy-gender{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:12px}.legacy-gender button{font-size:12px;min-height:40px}.result-more{flex-wrap:wrap}

/* The village, present-day ledger and next choice are separate reading layers. */
.game-page .play-top { margin-bottom:20px; }
.play-top h1 { font-size:26px; }
.play-top .small { font-size:12px; }
.player-identity>.pixel-portrait { width:52px; height:70px; }
.life-path { display:flex; list-style:none; padding:0; margin:0 0 24px; border-top:1px solid var(--line); }
.life-path li { flex:1; padding-top:12px; position:relative; font-family:var(--pixel); font-size:12px; color:var(--muted); }
.life-path li>span { position:absolute; width:5px; height:5px; left:0; top:-3px; background:var(--line); }
.life-path .passed>span { background:#8c9c85; }
.life-path .current { color:var(--forest); }
.life-path .current>span { background:var(--forest); outline:3px solid var(--paper); width:7px; height:7px; top:-4px; }
.play-layout { display:grid; grid-template-columns:224px minmax(0,1fr); grid-template-areas:"journal world" "journal story"; gap:0 24px; align-items:start; }
.journal { grid-area:journal; display:block; padding:20px; background:var(--sheet); position:sticky; top:20px; }
.journal-heading { font-family:var(--pixel); font-size:14px; margin-bottom:20px; }
.stats-grid { gap:20px 16px; }
.stat-name { font-size:12px; }
.stat strong { font-size:26px; }
.stat-track { display:block; height:4px; background:var(--warm); margin-top:8px; }
.stat-track i { display:block; height:100%; background:#7e9477; }
.wallet-button { border-top:1px solid var(--line); padding:20px 0 0; margin-top:24px; }
.wallet-title { display:flex; align-items:center; justify-content:space-between; color:var(--muted); font-size:12px; }
.wallet strong { font-size:24px; margin:4px 0 8px; }
.wallet-month { display:block; color:var(--muted); font-size:12px; line-height:1.8; }
.wallet-month b { display:block; font-weight:500; color:var(--ink); }
.wallet-month b.debt,.debt { color:#99503b; }
.journal-actions { grid-template-columns:1fr 1fr; margin-top:20px; gap:8px; }
.journal-actions .text-button { font-size:13px; min-height:44px; }
.family-brief { font-size:12px; margin-top:16px; padding-top:16px; }
.save-status { font-size:11px; line-height:1.8; flex-wrap:wrap; margin-top:16px; padding-top:16px; }
.life-window { grid-area:world; border-radius:4px 4px 0 0; padding:0; background:#dce4d5; }
.world-caption { display:flex; justify-content:space-between; gap:16px; padding:10px 16px; color:#4c6050; font-family:var(--pixel); font-size:12px; border-bottom:1px solid #b7c8b7; }
.life-window .village-art { height:auto; max-height:none; }
.pixel-cloud { animation:cloud-walk 18s steps(12,end) infinite alternate; }
.village-art .pixel-eyes { animation:pixel-blink 7s steps(1,end) infinite; }
@keyframes cloud-walk { to { transform:translateX(8px); } }
@keyframes pixel-blink { 0%,94%,98%,100% { opacity:1; } 96% { opacity:0; } }
.play-body { grid-area:story; }
.scene,.receipt { padding:24px 28px; }
.scene-label,.age-tag { font-size:12px; margin-bottom:12px; }
.scene h2,.receipt h2 { font-size:26px; margin-bottom:12px; }
.scene>p:last-child { font-size:15px; color:#586354; line-height:1.9; }
.choices { gap:12px; margin-top:20px; }
.pick-card { padding:20px 24px 16px 56px; border-color:#b9bdaa; min-height:112px; }
.pick-copy>strong { font-size:19px; }
.card-number { top:22px; left:20px; font-size:12px; color:var(--forest); }
.pick-description { font-size:13px; line-height:1.8; margin-top:8px; }
.pick-cost { font-size:12px; color:#825540; margin-top:8px; }
.pick-preview { display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px 16px; border-top:1px solid var(--line); padding-top:10px; margin-top:12px; font-size:12px; color:var(--forest); }
.pick-money { color:var(--ink); font-variant-numeric:tabular-nums; }
.pick-arrow { left:auto; right:20px; top:23px; }
.pick-note { font-size:12px; text-align:left; margin:16px 0; line-height:1.8; }
.finance-detail summary,.receipt-details summary { font-size:13px; }
.finance-col .kv { flex-wrap:wrap; gap:2px 8px; }
.finance-col .kv>span:last-child { margin-left:auto; }
.receipt .outcome { color:#586354; }
.receipt-deltas .effect { font-size:13px; padding:6px 8px; }
.receipt-money { border-top:1px solid var(--line); margin-top:20px; padding-top:16px; }
.receipt-money>div { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.receipt-money span,.receipt-money p { font-size:12px; color:var(--muted); }
.receipt-money strong { font-family:var(--pixel); font-weight:400; font-size:24px; }
.receipt-money p { margin-top:4px; text-align:right; }
.monthly-flow { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:20px 0 8px; }
.monthly-flow>div { display:flex; flex-direction:column; }
.monthly-flow span { font-size:12px; color:var(--muted); }
.monthly-flow strong { font-family:var(--pixel); font-size:22px; font-weight:400; margin-top:4px; }
.monthly-flow small { font-size:11px; color:var(--muted); margin-top:4px; }
.monthly-balance { background:var(--warm); margin-top:8px; }
.bank-rows .kv { font-size:13px; border-bottom:1px solid #dedfce; }
.bank-balance p { font-size:13px; line-height:1.8; }
.ledger-note { font-size:12px; color:var(--muted); padding:12px 0; margin-bottom:12px; }
.ability-row p,.specialty-item p { font-size:12px; }
@media(max-width:900px) and (min-width:761px) {
  .play-layout { grid-template-columns:196px minmax(0,1fr); gap:0 20px; }
  .journal { padding:16px; }
  .pick-card { padding-left:48px; }
}
@media(max-width:760px) {
  main { padding-top:24px; }
  .game-page .play-top { margin-bottom:16px; }
  .play-top h1 { font-size:22px; }
  .player-identity>.pixel-portrait { width:44px; height:60px; }
  .play-controls { flex-direction:row; gap:12px; }
  .play-controls button { font-size:12px; min-height:44px; }
  .play-controls button[data-action=home] { display:none; }
  .life-path { margin-bottom:20px; }
  .life-path li { font-size:11px; padding-top:10px; }
  .play-layout { grid-template-columns:1fr; grid-template-areas:"world" "journal" "story"; gap:0; }
  .life-window { width:100%; border-radius:4px 4px 0 0; padding:0; }
  .life-window .village-art { height:auto; max-height:none; }
  .world-caption { font-size:11px; padding:8px 12px; }
  .journal { position:static; padding:16px; border-top:0; border-radius:0; display:grid; grid-template-columns:1fr; gap:12px; background:#eef0e3; }
  .journal-heading { display:none; }
  .stats-grid { grid-column:1; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
  .stat-name { font-size:11px; gap:4px; }
  .stat-name svg { display:block; width:12px; height:12px; }
  .stat strong { font-size:22px; line-height:1.3; margin-top:4px; }
  .stat-track { margin-top:4px; height:3px; }
  .journal .wallet { display:grid; grid-template-columns:1fr auto; gap:4px 12px; border-top:1px solid var(--line); margin:0; padding-top:12px; }
  .wallet-title { font-size:11px; justify-content:start; gap:6px; }
  .wallet strong { grid-column:2; grid-row:1/3; font-size:22px; line-height:1.5; margin:0; }
  .wallet-month { font-size:11px; line-height:1.6; }
  .wallet-month b { display:inline; margin-left:4px; }
  .journal-actions { grid-template-columns:1fr 1fr 1.5fr; margin:0; gap:8px; }
  .journal-actions button:last-child { grid-column:auto; }
  .journal-actions .text-button { font-size:12px; min-height:40px; padding:6px; background:#faf6eb; }
  .family-brief { border:0; padding:0; margin:0; font-size:11px; grid-column:1; }
  .save-status { border:0; padding:0; margin:0; font-size:10px; }
  .scene,.receipt { padding:20px; }
  .scene-label,.age-tag { font-size:11px; margin-bottom:8px; }
  .scene h2,.receipt h2 { font-size:22px; margin-bottom:10px; }
  .scene>p:last-child { font-size:14px; }
  .choices { margin-top:16px; gap:10px; }
  .pick-card { padding:16px 16px 14px 44px; min-height:108px; }
  .pick-copy>strong { font-size:17px; padding-right:0; }
  .card-number { top:17px; left:16px; font-size:11px; }
  .pick-description { font-size:13px; margin-top:6px; }
  .pick-cost { font-size:11px; }
  .pick-preview { font-size:11px; padding-top:8px; margin-top:10px; gap:4px 8px; }
  .pick-arrow { display:none; }
  .pick-note { font-size:11px; }
  .receipt-money>div { align-items:flex-start; flex-direction:column; gap:4px; }
  .receipt-money p { text-align:left; }
  .bank-rows .kv { font-size:12px; }
  .monthly-flow { gap:16px; }
  .monthly-flow strong { font-size:20px; }
  .monthly-balance { padding:12px; font-size:12px; }
  .monthly-balance strong { font-size:20px; }
  .ability-row p { font-size:11px; }
}
@media(max-width:380px) {
  .stats-grid { gap:12px; }
  .stat-name svg { display:none; }
  .wallet strong { font-size:20px; }
  .journal .wallet { grid-template-columns:1fr; gap:4px; }
  .wallet strong { grid-column:1; grid-row:2; }
  .wallet-title { justify-content:space-between; }
  .life-path li { font-size:10px; }
  .scene,.receipt { padding:16px; }
  .play-top h1 { font-size:20px; }
}

/* Original card mascot, clear choice effects and a cash amount scale. */
.home-hamster { display:block; width:144px; height:144px; object-fit:contain; margin:0 0 12px; }
.stat-value { display:flex; align-items:baseline; gap:6px; flex-wrap:wrap; }
.stat-change { font-family:var(--pixel); font-size:13px; color:var(--forest); animation:stat-arrive .25s ease-out; }
.stat-change.negative { color:var(--accent); }
.pick-effects { display:flex; flex-wrap:wrap; gap:6px 12px; margin-top:10px; font-family:var(--pixel); font-size:13px; color:var(--forest); }
.pick-effects:empty { display:none; }
.wealth-meter { display:block; grid-column:1/-1; width:100%; margin-top:12px; }
.wealth-track { display:block; height:8px; border:1px solid #b6bea8; padding:1px; background:var(--warm); }
.wealth-track i { display:block; height:100%; background:var(--forest); }
.wealth-scale { display:flex; justify-content:space-between; gap:12px; margin-top:4px; font-size:10px; color:var(--muted); }
.bank-balance .wealth-meter { max-width:100%; margin-top:16px; }
@keyframes stat-arrive { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:760px) {
  .home-hamster { width:120px; height:120px; margin:0 auto 12px; }
  .stat-value { gap:4px; }
  .stat-change { font-size:11px; }
  .pick-effects { font-size:12px; gap:4px 10px; margin-top:8px; }
  .journal .wealth-meter { margin-top:6px; }
}

/* Ads sit beyond the game controls. Reserve space before their SDK arrives. */
.ad-area { margin:150px auto; min-height:280px; padding-top:12px; border-top:1px solid var(--line); width:100%; }
.ad-area ins { display:block; width:100%; min-height:250px; }
.ad-area:has(ins[data-ad-status="unfilled"]),.ad-area[data-ad-state="unavailable"] { display:none; }
.home-helper-links { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:12px; }
.home-helper-links .load-home { margin:0; }
.home-helper-links a { font-size:12px; color:var(--muted); }
.breadcrumbs { display:flex; gap:8px; flex-wrap:wrap; color:var(--muted); font-size:12px; margin-bottom:28px; }
.game-guide { max-width:760px; margin:auto; }
.game-guide h1 { font-size:32px; margin-bottom:20px; }
.game-guide>.lead { max-width:none; color:var(--ink); margin-bottom:16px; }
.game-guide>p { color:var(--muted); font-size:14px; margin:16px 0 24px; }
.guide-section { padding:32px 0; border-bottom:1px solid var(--line); }
.guide-section h2 { font-size:22px; margin-bottom:16px; }
.guide-section p,.guide-steps li { font-size:14px; line-height:1.9; color:var(--muted); margin-top:12px; }
.guide-steps { padding-left:24px; margin:0; }
.guide-table-wrap { margin:24px 0; overflow-x:auto; }
.guide-table-wrap table { border-collapse:collapse; width:100%; background:var(--sheet); font-size:13px; }
.guide-table-wrap caption { text-align:left; margin-bottom:12px; font-size:12px; color:var(--muted); }
.guide-table-wrap th,.guide-table-wrap td { padding:12px; text-align:left; border-bottom:1px solid var(--line); font-weight:400; }
.guide-table-wrap thead th { background:var(--felt); }
.guide-table-wrap td { font-variant-numeric:tabular-nums; white-space:nowrap; }
.guide-sources { padding-left:20px; font-size:14px; }
.guide-sources li { margin-top:20px; }
.guide-sources p { font-size:12px; margin-top:4px; }
.guide-bottom { padding:32px 0; }
.guide-bottom p { margin-top:20px; }
@media(max-width:760px) {
  .home-helper-links { justify-content:center; gap:8px 16px; }
  .game-guide h1 { font-size:26px; }
  .guide-section h2 { font-size:20px; }
  .guide-table-wrap th,.guide-table-wrap td { padding:10px 8px; font-size:12px; }
  .breadcrumbs { margin-bottom:24px; }
}
