html,body,#root{min-height:100%}body{margin:0;background:#f5f7fa;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}*{box-sizing:border-box}:focus-visible{outline:2px solid #1677ff;outline-offset:2px}.dl-content{width:100%;max-width:1200px;margin:0 auto;padding:24px}.dl-amount-expense{color:#1f2937}.dl-amount-income{color:#389e0d}.dl-amount-transfer{color:#595959}.dl-muted{color:#6b7280}.dl-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:100;display:flex;height:calc(60px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e5e7eb}.dl-bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:transparent;color:#6b7280;font-size:11px;font-family:inherit;cursor:pointer;min-height:44px}.dl-bottom-nav button .anticon{font-size:20px}.dl-bottom-nav button[aria-current=page]{color:#1677ff;font-weight:600}.dl-fab{position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:101;box-shadow:0 4px 12px #1677ff59}.dl-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.dl-calendar-cell{min-height:72px;padding:6px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;text-align:left;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:border-color .15s}.dl-calendar-cell:hover{border-color:#91caff}.dl-calendar-cell[aria-pressed=true]{border-color:#1677ff;box-shadow:inset 0 0 0 1px #1677ff}.dl-calendar-cell[data-future=true]{background:#fafafa;color:#9ca3af}.dl-activity-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f0f0f0}.dl-activity-row:last-child{border-bottom:0}@media(max-width:767px){.dl-content{padding:16px 12px calc(96px + env(safe-area-inset-bottom))}.dl-calendar-cell{min-height:56px;padding:4px;font-size:12px}.dl-calendar-grid{gap:4px}.dl-activity-row{flex-wrap:wrap}.dl-activity-row>.ant-flex{width:100%}.dl-activity-actions{width:100%}.dl-activity-actions .dl-grow{flex:1 1 0;min-width:0}.dl-activity-actions .dl-grow>span:last-child{overflow:hidden;text-overflow:ellipsis}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
