.life-events-dialog{width:min(880px,calc(100vw - 24px));max-height:min(88dvh,940px);overflow:auto;padding:0;border:1px solid #dce5ee;border-radius:18px;box-shadow:0 24px 80px #20334a40;color:#20334a}
.life-events-dialog::backdrop{background:#1a2c45a8}
.life-events-dialog-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f4f8ff;border-bottom:1px solid #dce5ee;padding:12px 18px;font:600 14px Inter,Arial,sans-serif}
.life-events-dialog-bar button,#lifeEventsBtn{border:1px solid #c7d7eb;background:#fff;border-radius:999px;padding:7px 13px;color:#1765ef;cursor:pointer;font:600 12px Inter,Arial,sans-serif}
.life-events-dialog-bar button:hover,#lifeEventsBtn:hover{background:#edf4ff}
.life-events{padding:20px;background:#fff;color:#20334a;font:14px/1.5 Inter,Arial,sans-serif}
.life-events header,.life-events-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.life-events h2{margin:0;font-size:20px}
.life-events form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.life-events form>label,.life-events fieldset{display:grid;gap:5px;min-width:0}
.life-events input,.life-events select,.life-events textarea{box-sizing:border-box;width:100%;padding:10px;border:1px solid #c7d7eb;border-radius:8px;background:white;color:#20334a;font:inherit}
.life-events textarea{min-height:90px}
.life-events fieldset{grid-column:1/-1;border:1px solid #c7d7eb;border-radius:8px}
.life-events [data-people]{display:flex;flex-wrap:wrap;gap:12px}
.life-events [data-people] label{display:flex;gap:6px;align-items:center}
.life-events [data-people] input{width:auto}
.life-events button{padding:9px 13px;border:1px solid #c7d7eb;border-radius:8px;background:#fff;color:#1765ef;font:inherit;cursor:pointer}
.life-events button:hover{background:#edf4ff}
.life-events button:focus-visible,.life-events input:focus-visible,.life-events select:focus-visible,.life-events textarea:focus-visible{outline:3px solid #1765ef;outline-offset:2px}
.life-events ol{padding-left:25px}
.life-events li{padding:14px 0;border-bottom:1px solid #dce5ee}
.life-events li p{margin:3px 0 10px;color:#61748a}
.life-events li button+button{margin-left:8px}
.life-events [data-error]{color:#a32121}
@media(max-width:600px){.life-events{padding:14px}.life-events form{grid-template-columns:1fr}.life-events header{align-items:flex-start;flex-direction:column}}
