.life-root{display:grid;gap:36px;margin-top:36px;min-width:0}
.bank-content>.life-root{margin-top:0}.bank-content>.life-root>section{padding:0;border:0;background:transparent;border-radius:0}.bank-content>.life-root>section+section{padding-top:28px;border-top:1px solid var(--line)}
.life-root>section{padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--panel,#fffdf8);min-width:0}
.life-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.life-heading h2{font-size:21px;letter-spacing:-.025em;line-height:1.25;margin:0 0 7px}.life-heading p{font-size:13px;line-height:1.6;color:var(--muted);max-width:64ch;margin:0}.life-heading>button{flex-shrink:0}
.life-conflict{padding:18px;border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--bg);border-radius:8px}.life-conflict dl{font-size:13px}.life-conflict dd{margin:4px 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}.life-conflict dt{color:var(--muted);font-size:12px}
.life-root h3{font-size:16px;margin:0 0 6px}.life-root p,.life-dialog p{line-height:1.65;font-size:13px}.life-root small{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}
.life-money-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.life-money-grid>article{padding:20px;background:var(--bg);border-radius:10px;border:1px solid var(--line)}.life-money-grid>article>span{font-size:12px;color:var(--muted)}.life-money-grid>article>strong{display:block;font-size:27px;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:8px;overflow-wrap:anywhere}
.life-root dl{display:grid;gap:10px;font-size:13px;margin:18px 0 0}.life-root dl>div{display:flex;justify-content:space-between;gap:20px}.life-root dt{color:var(--muted)}.life-root dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.life-horizons{display:flex;gap:4px;margin-bottom:20px}.life-horizons button[aria-pressed=true]{background:var(--ink);color:var(--bg)}
.life-caption{color:var(--muted);font-size:12px!important}.life-details,.life-subsection{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.life-root summary{min-height:44px;padding:10px 0;font-size:13px;font-weight:550;cursor:pointer}.life-root details[open]>summary{margin-bottom:12px}.life-line{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.life-line:last-child{border-bottom:0}.life-line>div,.life-line>strong{flex:1;min-width:0;overflow-wrap:anywhere}.life-line time{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.life-line>span{font-variant-numeric:tabular-nums;text-align:right}.life-line button{flex-shrink:0}
.life-statements,.life-threads{display:grid;gap:18px}.life-statements>article,.life-threads>article{padding:20px;background:var(--bg);border:1px solid var(--line);border-radius:10px}.life-statements article>header,.life-threads article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.life-badge{display:inline-block;background:var(--soft);border-radius:6px;font-size:11px;padding:5px 8px;color:var(--ink);line-height:1.4}.life-statements article details{margin-top:16px;border-top:1px solid var(--line)}.life-warning{color:var(--danger,#974a31);font-size:12px!important}.life-status{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:13px}.life-status>span:last-child{color:var(--muted);margin-left:auto}.life-dot{width:7px;height:7px;border-radius:100%;background:var(--muted)}.life-dot.is-ok{background:#49654e}.life-tags{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.life-tags span{font-size:11px;padding:5px 8px;background:var(--soft);border-radius:5px}
.life-timeline{padding:0;list-style:none}.life-timeline li{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:14px;align-items:start;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.life-timeline time{color:var(--muted)}.life-timeline li>span{font-variant-numeric:tabular-nums;text-align:right}.life-dialog{max-width:760px}.life-dialog .life-heading{margin-top:0}.life-dialog form{gap:18px}.life-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.life-check{display:flex;align-items:flex-start;gap:10px;font-size:13px}.life-check input{width:auto;min-height:20px;margin-top:2px}.life-message{border:1px solid var(--line);border-radius:8px;margin:16px 0;padding:16px}.life-message legend{font-size:12px;color:var(--muted);padding:0 6px}.life-feedback{color:var(--danger);margin:0}.life-feedback:empty{display:none}.life-skeleton{height:112px;background:var(--soft);border-radius:12px}.life-load-error{border:1px solid var(--line);border-radius:10px;padding:20px}
/* One rhythm for headings and sections across the existing tools. */
#content>.ws-group,#content>.collection-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.section-heading{padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid var(--line)}.section-heading h2{margin:0}.ws-empty{border:1px dashed var(--line);background:var(--panel,#fffdf8);border-radius:12px;padding:28px}.ws-card+.ws-card{margin-top:14px}
.life-root button:focus-visible,.life-root summary:focus-visible,.life-dialog :is(button,input,textarea,select):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:760px){.life-root{gap:24px;margin-top:28px}.life-root>section{padding:18px;border-radius:12px}.life-heading{gap:12px;flex-direction:column;margin-bottom:16px}.life-heading h2{font-size:20px}.life-heading>button{align-self:flex-start}.life-money-grid{grid-template-columns:1fr;gap:12px}.life-money-grid>article{padding:16px}.life-money-grid>article>strong{font-size:25px}.life-statements>article,.life-threads>article{padding:15px}.life-statements article>header{flex-direction:column;gap:10px}.life-line{gap:10px;flex-wrap:wrap}.life-line>div,.life-line>strong{flex-basis:55%}.life-line>time{font-size:12px}.life-line>button{margin-left:auto}.life-status>span:last-child{margin-left:0;flex-basis:100%}.life-timeline li{grid-template-columns:78px minmax(0,1fr);gap:9px}.life-timeline li>span{grid-column:2;text-align:left}.life-form-grid{grid-template-columns:1fr}.life-message{padding:12px}.life-root dl>div{gap:12px}.life-root dd{overflow-wrap:anywhere}.ws-empty{padding:20px}}
