.life-app{min-height:100vh;background:#f6f8fc;color:#18273d}.life-top{height:76px;padding:0 34px;display:flex;align-items:center;gap:24px;background:#0e1d33;color:#fff}.life-top button{border:0;background:transparent;color:#dce8f7;font-size:14px;cursor:pointer}.life-top div{display:flex;flex-direction:column;gap:4px}.life-top span{font-size:10px;letter-spacing:.18em;color:#9eb5d1}.life-top strong{font-size:20px}.life-top-note{margin-left:auto!important;color:#a7bad2;font-size:12px}.life-body{display:grid;grid-template-columns:238px 1fr;min-height:calc(100vh - 76px)}.life-side{padding:26px 16px;background:#fff;border-right:1px solid #e2e8f1}.life-side button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 16px;margin:3px 0;border:0;border-radius:12px;background:transparent;color:#60718a;text-align:left;cursor:pointer}.life-side button.active{background:#eaf3ff;color:#1b65bd;font-weight:700}.life-side i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#edf2f8;font-style:normal}.life-side button.active i{background:#1f78d1;color:#fff}.life-main,#life-main{padding:36px 44px;max-width:1440px;width:100%;margin:auto}.life-hero{display:flex;justify-content:space-between;gap:30px;padding:34px;border-radius:22px;background:linear-gradient(135deg,#fff,#edf5ff);border:1px solid #dce7f3}.life-hero.compact{align-items:center}.life-hero span{font-size:11px;letter-spacing:.16em;color:#6b82a0}.life-hero h1{margin:10px 0;font-size:31px}.life-hero p{margin:0;color:#6e7f96;line-height:1.7}.life-date{color:#637995}.life-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.life-cards button{padding:22px;text-align:left;border:1px solid #dfe7f0;border-radius:16px;background:#fff;cursor:pointer}.life-cards button:hover{border-color:#74a8e8;transform:translateY(-2px)}.life-cards i{display:block;color:#277bd1;font-style:normal;font-size:22px}.life-cards b{display:block;margin:14px 0 6px;font-size:16px}.life-cards span{color:#8593a7;font-size:12px}.life-panel{margin-top:18px;padding:24px;border:1px solid #e0e7ef;border-radius:18px;background:#fff}.life-panel-head{display:flex;justify-content:space-between}.life-panel-head span{color:#74859e;font-size:12px}.life-panel-head h2{margin:5px 0 18px}.life-panel-head button,.life-add{padding:10px 15px;border:0;border-radius:10px;background:#1d6fd0;color:#fff;cursor:pointer}.life-file-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.life-file-grid div{padding:14px;border-radius:12px;background:#f6f9fd}.life-file-grid b,.life-file-grid strong,.life-file-grid small{display:block}.life-file-grid b{color:#4384c8;font-size:12px}.life-file-grid strong{margin:8px 0}.life-file-grid small{color:#9aa7b8}.life-content{display:grid;grid-template-columns:1fr 290px;gap:18px;margin-top:18px}.life-entry-list,.life-files{padding:18px;border:1px solid #e0e7ef;border-radius:18px;background:#fff}.life-entry{display:grid;grid-template-columns:110px 1fr auto;gap:20px;padding:20px 4px;border-bottom:1px solid #edf1f6}.life-entry:last-child{border-bottom:0}.life-entry-date{color:#6e8bb1;font-size:12px}.life-entry h3{margin:0 0 8px}.life-entry p,.life-entry div{color:#7b889b;font-size:13px}.life-entry>button{align-self:start;border:0;background:#edf4fd;color:#2772c2;padding:7px 10px;border-radius:8px;cursor:pointer}.life-files h3{margin-top:0}.life-files button{display:flex;flex-direction:column;gap:5px;width:100%;padding:12px;border:0;border-bottom:1px solid #edf1f6;background:#fff;text-align:left;cursor:pointer}.life-files button span{color:#3680ca;font-size:10px}.life-files button b{font-size:12px;overflow:hidden;text-overflow:ellipsis}.life-empty{padding:48px 20px;text-align:center;color:#8a98aa}.life-empty b,.life-empty span{display:block}.life-empty span{margin-top:8px;font-size:13px}.life-form{display:flex!important;flex-direction:column;gap:10px}.life-form input,.life-form textarea{padding:11px;border:1px solid #d6e0eb;border-radius:9px}.life-form textarea{min-height:100px}.life-form>div{display:flex;gap:8px}.life-form button{padding:9px 15px;border:0;border-radius:8px;background:#1d6fd0;color:#fff}.life-form button+button{background:#eef2f7;color:#62748d}@media(max-width:900px){.life-body{grid-template-columns:1fr}.life-side{display:flex;overflow:auto}.life-side button{min-width:130px}.life-main,#life-main{padding:20px}.life-cards,.life-file-grid{grid-template-columns:repeat(2,1fr)}.life-content{grid-template-columns:1fr}}
