.life-page,.workshop{max-width:1400px;margin:auto;padding:20px 0 40px;word-break:keep-all;overflow-wrap:anywhere}.life-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.life-heading h1{font-size:28px;margin:3px 0}.life-heading small{display:block;font-size:11px;letter-spacing:.12em;color:#aaa}.life-heading strong{display:block;font-size:18px;margin-top:6px;font-variant-numeric:tabular-nums}.life-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:24px;align-items:start}.life-showcase{min-width:0;position:sticky;top:24px}.life-scene{border:1px solid #ffffff1f;border-radius:20px;overflow:hidden;background:#18202a}.life-scene svg{display:block;width:100%;height:auto}.life-scene-caption{display:flex;justify-content:space-between;gap:10px;padding:14px 18px;border-top:1px solid #ffffff14;font-size:13px}.life-scene-caption button{background:transparent;border:0;padding:0;color:var(--life-accent);text-align:left;font:inherit;cursor:pointer}.life-hint{font-size:12px;color:#a7adb4;margin:10px 2px}.life-tabs{display:flex;gap:8px;margin-bottom:16px}.life-tabs button{flex:1;background:#ffffff06;border:1px solid #ffffff1c;border-radius:12px;padding:12px;color:#b1b8c2;font:inherit;cursor:pointer}.life-tabs button[aria-pressed=true]{color:#f2e4cc;border-color:#ccb184;background:#ccb18416}.life-products{display:grid;gap:10px}.life-product{display:flex;align-items:center;text-align:left;gap:12px;min-width:0;width:100%;padding:16px;border-radius:14px;background:#ffffff04;border:1px solid #ffffff18;color:inherit;font:inherit;cursor:pointer}.life-product>span:nth-child(2){flex:1;min-width:0}.life-product strong{display:block;font-size:14px}.life-product small{display:block;color:#9fa7b2;font-size:12px;margin-top:5px;line-height:1.5}.life-product b{font-size:12px;font-weight:500;white-space:nowrap}.life-product-mark{display:grid;place-items:center;color:#17212b;width:36px;height:36px;border-radius:10px;flex-shrink:0;font-size:22px}.life-product[aria-pressed=true]{border-color:#cbb38a;background:#cbb38a0d}.life-selection{padding:18px;background:#ffffff05;border:1px solid #ffffff18;border-radius:14px}.life-selection h2{font-size:19px;margin:0 0 8px}.life-selection p,.life-rules p{color:#aaa;font-size:13px;line-height:1.6}.life-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.life-actions button,.life-showcase>button{border:1px solid #ffffff25;border-radius:10px;padding:11px 15px;background:#252a30;color:#eee;font:inherit;font-size:13px;cursor:pointer}.life-actions .primary{background:#cbb38a;color:#17212b}.life-page button:disabled{opacity:.45;cursor:default}.life-page button:focus-visible,.workshop button:focus-visible{outline:2px solid #e8c88b;outline-offset:3px}.life-page button:hover:not(:disabled){filter:brightness(1.12)}.life-page button:active:not(:disabled){transform:translateY(1px)}.life-confirm{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - env(safe-area-inset-top) - 40px);overflow:auto;background:#191d24;color:#eee;border:1px solid #777;border-radius:18px;padding:24px}.life-confirm::backdrop{background:#000b}.life-confirm h2{font-size:20px}.life-confirm dl>div{display:flex;justify-content:space-between;gap:15px;margin:12px 0}.life-confirm dd{margin:0}.life-confirm p{font-size:13px;color:#aaa}.life-rules{margin-top:18px;font-size:12px;color:#a9adb3}.life-visit{border:1px solid #ffffff20;border-radius:14px;margin:16px 0;padding:12px}.life-visit summary{cursor:pointer;font-size:13px}.life-visit .life-scene{margin-top:12px}.workshop>.life-tabs{max-width:480px}.workshop h1:not(.life-heading h1){font-size:20px}.life-scene-small{max-width:850px;margin:auto}@media(max-width:760px){.life-layout{grid-template-columns:1fr;gap:14px}.life-showcase{position:static}.life-heading h1{font-size:24px}.life-heading strong{font-size:15px}.life-page,.workshop{padding-top:10px}.life-product{padding:13px;gap:9px;flex-wrap:wrap}.life-product b{margin-left:45px;flex-basis:100%}.life-scene-caption{padding:12px;font-size:12px}.life-selection{padding:14px}.life-tabs button{padding:11px 8px;font-size:13px}}@media(prefers-reduced-motion:reduce){.life-page *{transition:none!important;animation:none!important}}
