.life-game{--life-ink:#2d493f;--life-muted:#52665c;--life-paper:#fffaf0;--life-line:#c8d3bc;--life-accent:#256755;color:var(--life-ink);border:1px solid var(--life-line);font-family:var(--font-geist-sans),"Hiragino Sans",sans-serif;background:#edf1e2;border-radius:28px;margin-top:28px;overflow:hidden}.life-game *{box-sizing:border-box}.life-game h2,.life-game h3,.life-game p{color:inherit}.life-game h2{letter-spacing:.02em;margin:12px 0;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.45}.life-game h3{margin:0 0 16px;font-size:1.15rem}.life-game p{margin:10px 0;line-height:1.8}.life-game button,.life-game input,.life-game select{font:inherit}.life-game button{background:var(--life-paper);color:var(--life-ink);cursor:pointer;touch-action:manipulation;border:1px solid #9fae97;border-radius:14px;min-height:48px;padding:12px 16px;font-weight:700;line-height:1.5}.life-game button:hover:not(:disabled){border-color:var(--life-accent);box-shadow:0 3px #375c4220}.life-game button:disabled{opacity:.55;cursor:not-allowed}.life-game :focus-visible{outline-offset:4px;outline:3px solid #c97824}.life-game .life-primary{background:var(--life-accent);color:#fffbe9;border-color:var(--life-accent);padding:16px 20px;font-size:1.04rem;box-shadow:0 4px #123d30}.life-topline{color:#fff6dc;letter-spacing:.04em;background:#315748;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 24px;font-size:.87rem;font-weight:750;display:flex}.life-setup{grid-template-columns:1.1fr 1fr;align-items:start;display:grid}.life-intro{padding:32px 24px 20px;position:sticky;top:110px}.life-intro h2{margin:18px 0;font-family:serif;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:900;line-height:1.45}.life-eyebrow{letter-spacing:.13em;font-size:.8rem;font-weight:800}.life-intro>p:not(.life-eyebrow){font-size:.95rem}.life-board{aspect-ratio:3/2;width:100%;height:auto;display:block;overflow:visible}.life-intro .life-board{border:1px solid #c6cbaa;border-radius:24px;margin:20px 0 12px}.life-how{flex-wrap:wrap;gap:12px;font-size:.82rem;font-weight:700;display:flex}.life-how b{border:1px solid #a2b192;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:3px;display:inline-grid}.life-setup-form{background:var(--life-paper);border-left:1px solid var(--life-line);padding:28px}.life-select{border:0;min-width:0;margin:0 0 22px;padding:0}.life-select legend{margin-bottom:10px;font-weight:750}.life-select>div{flex-wrap:wrap;gap:8px;display:flex}.life-select button[aria-pressed=true]{color:#234b37;background:#d4e7ce;border:2px solid #447456;padding:11px 15px}.life-members{gap:14px;margin-bottom:24px;display:grid}.life-member{background:#f2f0e4;border:1px solid #d7d5c2;border-radius:16px;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px;display:grid}.life-member>span{align-self:center;font-size:1.9rem}.life-member>label:last-child{grid-column:2}.life-member label{gap:6px;min-width:0;font-size:.82rem;font-weight:700;display:grid}.life-member small{font-weight:400}.life-member input,.life-member select{color:#2d493f;background:#fffef9;border:1px solid #aab6a1;border-radius:9px;width:100%;min-width:0;min-height:45px;padding:9px;font-size:16px}.life-member select{font-size:.85rem}.life-small{color:var(--life-muted)!important;font-size:.8rem!important}.life-start{width:100%;margin:12px 0}.life-resume{background:#e4ecd9;border:1px solid #8ca782;border-radius:18px;margin-bottom:28px;padding:18px}.life-resume p{font-size:.85rem}.life-resume button{width:100%}.life-warning{color:#65461c;background:#fff0cb;border:1px solid #c58c41;border-radius:14px;margin:18px;padding:16px;line-height:1.7}.life-warning button{margin:10px 6px 0 0}.life-setup-form .life-warning{margin:16px 0}.life-button-row{flex-wrap:wrap;gap:8px;display:flex}.life-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;font-size:.85rem;display:flex}.life-toolbar button{min-height:44px;padding:8px 12px;font-size:.8rem}.life-player-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:0 20px 20px;display:grid}.life-player{border:1px solid #b7c5ac;border-left:5px solid var(--player-color);background:#fffaf0;border-radius:14px;min-width:0;padding:12px}.life-player.is-current{outline:3px solid var(--player-color);outline-offset:1px;background:#fffdf5}.life-player>strong{overflow-wrap:anywhere;font-size:.95rem;display:block}.life-player-status{color:#52665c;margin:4px 0 9px;font-size:.72rem;display:block}.life-stats{flex-wrap:wrap;gap:7px 12px;font-size:.85rem;font-weight:750;display:flex}.life-stats small{font-size:.65rem;font-weight:500}.life-play-layout{grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);align-items:start;gap:20px;padding:0 20px 24px;display:grid}.life-map-wrap{min-width:0;position:sticky;top:110px}.life-map-wrap>.life-board{border:1px solid #c4cbaa;border-radius:24px}.life-legend{flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:16px 0;font-size:.8rem;display:flex}.life-action{background:var(--life-paper);border:1px solid var(--life-line);text-align:center;border-radius:22px;min-width:0;min-height:400px;padding:24px}.life-action .life-turn-name{overflow-wrap:anywhere;border-bottom:1px dashed #b2bda4;margin-top:0;padding-bottom:16px;font-size:1.15rem;font-weight:800}.life-dream{background:#ecebd8;border-radius:10px;padding:9px;font-size:.8rem}.life-dream small{font-size:.72rem;display:block}.life-dice{color:#aa573d;background:#fff9e9;border:2px solid #bda576;border-radius:22px;place-items:center;width:96px;height:96px;margin:28px auto;font-family:serif;font-size:76px;line-height:1;display:grid;transform:rotate(-7deg);box-shadow:4px 6px #d9ceab}.life-dice.is-rolling{animation:.38s ease-in-out life-dice-roll}.life-action>.life-primary,.life-recap>.life-primary{width:100%;margin:18px 0 4px}.life-event-icon{margin:20px 0 10px;font-size:3rem;display:block}.life-roll-note{background:#f0ecd7;border-radius:8px;padding:8px;font-size:.77rem}.life-choices{text-align:left;gap:12px;margin-top:24px;display:grid}.life-choices button{text-align:left;white-space:normal;border:2px solid #bccab1;gap:6px;padding:16px;display:grid}.life-choices button>strong{justify-content:space-between;gap:10px;font-size:1.02rem;display:flex}.life-choices button>span{font-size:.82rem;font-weight:400;line-height:1.7}.life-choices em{color:#914a33;font-size:.75rem;font-style:normal}.life-gains{grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0;display:grid}.life-gains>span{background:#e6eddb;border-radius:14px;padding:14px 4px;font-size:1.3rem;font-weight:850;animation:.35s ease-out life-gain}.life-gains small{margin-top:5px;font-size:.72rem;font-weight:500;display:block}.life-bottom{border-top:1px solid var(--life-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;font-size:.77rem;display:flex}.life-bottom label{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-weight:750;display:flex}.life-bottom input{accent-color:#256755;width:21px;height:21px}.life-rules{border-top:1px solid var(--life-line);background:#f8f5e9;padding:18px 24px;font-size:.87rem;line-height:1.9}.life-rules summary{cursor:pointer;min-height:35px;font-weight:750}.life-rules ol{padding-left:24px}.life-rules li{margin:10px 0}.life-results{text-align:center;padding:24px}.life-results>h2{font-family:serif;font-size:clamp(1.8rem,3vw,2.7rem)}.life-result-list{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0;display:grid}.life-result-list article{background:#fffaf0;border:1px solid #c5ccb5;border-radius:20px;padding:24px}.life-result-list .life-winner{background:#fff3c8;border:2px solid #b5933e}.life-result-title{align-items:center;gap:12px;display:flex}.life-result-title>span{white-space:nowrap;font-size:1.5rem}.life-result-title h3{overflow-wrap:anywhere;flex:1;margin:0}.life-result-title>strong{font-size:2rem}.life-result-title small{margin-left:3px;font-size:.8rem}.life-result-list p,.life-result-list details{font-size:.82rem;line-height:1.8}.life-result-list summary{cursor:pointer;min-height:44px;padding:12px 0}.life-result-list ol{padding-left:22px}.life-result-list li{margin-bottom:8px}.life-game[data-quiet=true] *{transition:none!important;animation:none!important}@keyframes life-dice-roll{0%{transform:rotate(-60deg)translateY(-15px)}60%{transform:rotate(25deg)translateY(-8px)}to{transform:rotate(-7deg)}}@keyframes life-gain{0%{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1400px){.life-player-list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}}@media (max-width:1000px){.life-setup{grid-template-columns:1fr 1fr}.life-intro{padding:24px 18px}.life-play-layout{grid-template-columns:minmax(0,1fr) minmax(310px,.85fr);gap:14px}.life-action{padding:18px}.life-player-list{grid-template-columns:repeat(3,minmax(0,1fr))}.life-stats small{display:none}}@media (max-width:740px){.life-game{border-radius:20px;margin-top:20px}.life-topline{padding:14px 16px;font-size:.75rem}.life-setup{flex-direction:column;display:flex}.life-intro{width:100%;padding:24px 18px 16px;position:static}.life-intro h2{font-size:2.4rem}.life-intro .life-board{border:0;max-height:310px}.life-how{gap:8px;font-size:.72rem}.life-setup-form{border-left:0;border-top:1px solid var(--life-line);width:100%;padding:22px 18px}.life-play-layout{flex-direction:column;gap:8px;padding:0 12px 20px;display:flex}.life-map-wrap{width:100%;position:static}.life-map-wrap .life-small{display:none}.life-map-wrap .life-board{max-height:360px}.life-legend{gap:6px 12px;margin:10px 0;font-size:.7rem}.life-action{width:100%;min-height:0;padding:20px}.life-action .life-turn-name{padding-bottom:10px}.life-player-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 14px}.life-player{padding:9px}.life-player>strong{font-size:.8rem}.life-stats{gap:5px 9px;font-size:.77rem}.life-player-status{font-size:.66rem}.life-toolbar{padding:12px;font-size:.72rem}.life-toolbar button{max-width:145px;font-size:.72rem}.life-result-list{grid-template-columns:1fr}.life-results{padding:20px 14px}.life-result-list article{padding:18px}.life-bottom{gap:4px;padding:12px 18px}.life-bottom>span{width:100%}.life-rules{padding:18px}.life-dice{margin:18px auto}.life-warning{margin:12px}.life-result-title h3{font-size:1rem}}@media (prefers-reduced-motion:reduce){.life-game *{transition:none!important;animation:none!important}}.life-action,.life-results{scroll-margin-top:100px}[data-theme=dark] .life-game{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}
