:root{--color-bg: #FAFDFE;--color-card: rgba(255, 255, 255, .78);--color-card-solid: #FFFFFF;--color-text: #2F3A4A;--color-text-soft: #8E9AA3;--color-money-blue: #5FA7C8;--color-income: #D79AB2;--color-expense: #E58AA8;--color-transfer: #8CA7E8;--color-border: rgba(120, 150, 170, .14);--calendar-money: #5FA7C8;--button-text: #5FA7C8;--tab-active-text: #69AFCB;--shadow-card: 0 10px 30px rgba(110, 150, 170, .1);--radius-card: 24px;--radius-button: 999px;--gradient-bg: linear-gradient(135deg, #FDEEF5 0%, #F8FBFD 45%, #EAF7FB 100%);--gradient-header-glass: linear-gradient( 135deg, rgba(253, 238, 245, .92) 0%, rgba(248, 251, 253, .94) 45%, rgba(234, 247, 251, .92) 100% );--gradient-button-soft: linear-gradient( 135deg, rgba(250, 226, 235, .56) 0%, rgba(245, 250, 252, .78) 50%, rgba(221, 241, 247, .68) 100% );--gradient-tab-active: linear-gradient( 135deg, rgba(250, 226, 235, .58) 0%, rgba(235, 247, 250, .68) 48%, rgba(221, 241, 247, .72) 100% )}html,body,#root{width:100%;min-height:100%;margin:0;background:var(--gradient-bg);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;color:var(--color-text)}*{box-sizing:border-box}body{min-width:320px;overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}button,input,select{font:inherit}button{border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled,input:disabled{cursor:not-allowed;opacity:.66}input,select{min-width:0;border:0;outline:0}h1,h2,p{margin:0}.app-shell{--app-gutter: 18px;width:100%;max-width:480px;min-height:100vh;margin:0 auto;background:var(--gradient-bg);padding:0 var(--app-gutter) calc(72px + env(safe-area-inset-bottom));position:relative;overflow-x:clip}.app-main{padding-top:22px}.page-loading{min-height:min(58vh,520px);display:grid;place-items:center;padding:18px 0}.page-loading-card{width:min(260px,100%);display:grid;justify-items:center;gap:8px;border:1px solid rgba(120,180,210,.16);border-radius:24px;padding:22px 18px;background:linear-gradient(135deg,#fceaf2b8,#f8fbfde0 48%,#e5f5fabd);box-shadow:0 14px 32px #6e96aa1f;text-align:center}.page-loading-mark{display:inline-flex;align-items:center;gap:6px;min-height:22px}.page-loading-mark i{width:8px;height:8px;border-radius:999px;background:#8fc5d8;opacity:.48;animation:page-loading-pulse 1s ease-in-out infinite}.page-loading-mark i:nth-child(2){background:#d79ab2;animation-delay:.13s}.page-loading-mark i:nth-child(3){animation-delay:.26s}.page-loading-card strong{color:#456f82;font-size:15px;font-weight:780}.page-loading-card small{color:#7f8b96;font-size:12px;font-weight:640}.nacre-loading-state{min-height:min(62vh,560px);display:grid;place-items:center;align-content:center;justify-items:center;gap:14px;padding:28px 16px;text-align:center}.nacre-loading-state>div:not(.nacre-loading-actions){display:grid;gap:5px}.nacre-loading-state strong{color:#456f82;font-size:16px;font-weight:800}.nacre-loading-state span{max-width:260px;color:#7f8b96;font-size:12.5px;font-weight:650;line-height:1.55}.nacre-loading-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.nacre-loading-actions button{min-height:38px;min-width:96px;border-radius:999px;padding:0 16px;color:#456f82;background:#ffffffad;border:1px solid rgba(120,180,210,.16);font-size:13px;font-weight:760;box-shadow:0 10px 24px #6e96aa1a}.nacre-loading-actions button:first-child{color:#fff;background:linear-gradient(135deg,#8fc5d8,#d79ab2)}@keyframes page-loading-pulse{0%,to{transform:translateY(0);opacity:.42}50%{transform:translateY(-4px);opacity:.86}}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;min-height:calc(64px + env(safe-area-inset-top));display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:10px;margin:0 calc(var(--app-gutter) * -1);padding-left:var(--app-gutter);padding-right:var(--app-gutter);padding-top:env(safe-area-inset-top);padding-bottom:6px;border-radius:0 0 32px 32px;background:var(--gradient-header-glass);box-shadow:0 10px 26px #6e96aa14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.icon-button{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:50%;background:#ffffff61;box-shadow:0 8px 20px #7ba4b612;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.icon-button-blue{color:#6dafc9}.icon-button-pink{color:#e58aa8}.brand-lockup{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}.brand-lockup h1,.auth-brand h1{font-size:28px;line-height:1;font-weight:760;letter-spacing:0;background:linear-gradient(135deg,#ecb8d29e,#c5cfec99 45%,#82cae2a3);color:transparent;-webkit-background-clip:text;background-clip:text;text-shadow:0 6px 18px rgba(120,170,200,.1)}.header-action-svg{display:block}.brand-lockup p,.auth-brand p{line-height:1.2;font-size:12px;color:#5f707d94}.nacre-logo-mark{display:block;flex:0 0 auto;object-fit:contain}.page-stack{display:grid;gap:16px}.page-stack.amount-keypad-visible{padding-bottom:calc(268px + env(safe-area-inset-bottom))}.month-book-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.book-switch-button{min-height:44px;display:inline-flex;align-items:center;gap:4px;background:transparent;color:var(--color-text);padding:0;white-space:nowrap}.month-display{min-width:0;display:inline-flex;align-items:center;min-height:44px;color:#456f82}.month-display span{font-size:17px;font-weight:760}.book-switch-button{max-width:48%;justify-content:flex-end;color:#456f82;font-size:15px;font-weight:650;overflow:hidden;text-overflow:ellipsis}.summary-grid,.stats-grid{display:grid;gap:12px}.summary-grid-single{grid-template-columns:1fr}.summary-grid-family,.stats-grid,.stats-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-header{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:14px 16px;background:#ffffff94;box-shadow:0 10px 24px #6e96aa12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.stats-header strong{min-width:0;color:#456f82;font-size:16px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-header span{flex:0 0 auto;color:#6f7d88;font-size:13px;font-weight:650}.summary-card,.soft-panel,.record-form-panel,.account-form-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.summary-card{min-height:104px;padding:20px;display:grid;justify-items:center;align-content:center;gap:9px;text-align:center}.summary-card span{color:#456f82;font-size:14px;font-weight:700}.summary-card strong{max-width:100%;font-size:clamp(18px,5.7vw,28px);color:var(--color-money-blue);font-weight:760;letter-spacing:0;line-height:1.05;overflow-wrap:normal;white-space:nowrap}.summary-card .stats-income-amount{color:#d79ab2}.summary-card .stats-balance-negative{color:#c98f9a}.summary-card .stats-transfer-amount{color:#8ca7e8}.summary-card-clickable{width:100%;border:1px solid var(--color-border);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.summary-card-clickable:hover{background:#ffffffc2;border-color:#5fa7c838;box-shadow:0 16px 32px #5a91aa29}.summary-card-clickable:active{transform:translateY(1px)}.stats-action-card{min-width:0}.stats-action-card:active{transform:translateY(1px)}.stats-detail-header{min-height:58px;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:10px 12px;background:#ffffff94;box-shadow:0 10px 24px #6e96aa12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.stats-detail-header .icon-button{color:#456f82}.stats-detail-header div{min-width:0;display:grid;gap:3px}.stats-detail-header strong{color:#456f82;font-size:17px;font-weight:760}.stats-detail-header span{color:#6f7d88;font-size:12px;font-weight:650}.stats-transfer-total-card{min-height:96px}.transfer-range-panel{display:grid;gap:10px}.transfer-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border-radius:999px;padding:4px;background:#ffffff80;border:1px solid rgba(120,180,210,.14)}.transfer-mode-tab{min-height:38px;border-radius:999px;color:#6f7d88;font-weight:700}.transfer-mode-tab-active{color:#456f82;background:var(--gradient-tab-active);box-shadow:0 8px 18px #6aaecb1a}.transfer-month-switcher{min-height:46px;display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;border-radius:999px;padding:4px;background:#ffffff80;border:1px solid rgba(120,180,210,.14)}.transfer-month-switcher button{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;color:#456f82}.transfer-month-switcher span{text-align:center;color:#456f82;font-size:15px;font-weight:760}.stats-rank-list{display:grid;gap:12px}.stats-rank-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 13px;background:#ffffff8f;border:1px solid rgba(120,180,210,.12)}.stats-rank-main{min-width:0;display:grid;gap:8px}.stats-rank-main strong{color:#456f82;font-size:14px;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#78b4d224}.stats-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(135deg,#f3c9d8,#b8d4e0)}.stats-rank-side{display:grid;justify-items:end;gap:3px;text-align:right}.stats-rank-side strong{color:var(--color-money-blue);font-size:14px;font-weight:760}.stats-rank-side span{color:#6f7d88;font-size:12px;font-weight:650}.report-page{padding-bottom:96px}.report-topbar{min-height:58px;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;border:1px solid rgba(120,180,210,.14);border-radius:20px;padding:10px 12px;background:#ffffff94;box-shadow:0 12px 28px #5a91aa1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.report-back-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(120,180,210,.16);border-radius:999px;color:#456f82;background:#ffffffad;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.report-back-button:active,.report-range-tab:active,.report-member-pill:active,.report-reload-button:active{transform:translateY(1px)}.report-topbar div{min-width:0;display:grid;gap:4px}.report-topbar strong{color:#456f82;font-size:17px;font-weight:760}.report-topbar span{color:#6f7d88;font-size:13px;font-weight:620;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-topbar-skeleton{min-width:0;display:grid;gap:8px}.report-range-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:none}.report-range-tabs::-webkit-scrollbar{display:none}.report-range-skeleton-tabs{pointer-events:none}.report-range-tab{flex:0 0 auto;min-height:36px;border-radius:999px;padding:0 14px;border:1px solid rgba(120,180,210,.16);color:#6f7d88;background:#ffffff8a;font-size:13px;font-weight:700;transition:transform .16s ease,opacity .16s ease,background .16s ease,box-shadow .16s ease}.report-range-tab-active{color:#456f82;border-color:#78b4d242;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 10px 22px #5a91aa1f}.report-custom-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;border:1px solid rgba(120,180,210,.14);border-radius:20px;padding:12px;background:#ffffff94;box-shadow:0 12px 28px #5a91aa1a}.report-custom-range label{display:grid;gap:6px}.report-custom-range span{color:#6f7d88;font-size:12px;font-weight:700}.report-custom-range input,.report-custom-range .date-field-display{min-width:0;height:38px;border:1px solid rgba(120,180,210,.22);border-radius:14px;padding:0 10px;color:#2f3a4a;background:#ffffffb3}.report-custom-range button,.report-member-pill{min-height:38px;border-radius:999px;border:1px solid rgba(120,180,210,.18);color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 10px 22px #5a91aa1f;font-size:13px;font-weight:760;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.report-member-pill{width:fit-content;display:inline-flex;align-items:center;gap:7px;padding:0 14px}.report-total-card{display:grid;justify-items:center;gap:8px;border:1px solid var(--color-border);border-radius:24px;padding:22px 18px;text-align:center;background:linear-gradient(135deg,#fceaf2b8,#ffffffc2 48%,#e5f5fabd);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.report-total-card span{color:#456f82;font-size:14px;font-weight:720}.report-total-card strong{color:var(--color-money-blue);font-size:36px;font-weight:780}.report-total-card small{color:#7f8b96;font-size:12px;font-weight:650}.report-chart-panel{display:grid;gap:16px}.report-donut-wrap{position:relative;width:196px;height:196px;margin:0 auto;display:grid;place-items:center}.report-donut{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.report-donut-bg,.report-donut-segment{fill:none;stroke-width:14}.report-donut-bg{stroke:#78b4d224}.report-donut-segment{stroke-linecap:round}.report-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:5px;text-align:center}.report-donut-center span{color:#7f8b96;font-size:12px;font-weight:700}.report-donut-center strong{color:#456f82;font-size:19px;font-weight:780}.report-rank-list{display:grid;gap:12px}.report-rank-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 13px;background:#ffffff8f;border:1px solid rgba(120,180,210,.12)}button.report-rank-row{width:100%;color:inherit;font:inherit;text-align:left}.report-rank-row-clickable{grid-template-columns:48px minmax(0,1fr) auto 18px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.report-rank-row-clickable:active{transform:translateY(1px)}.report-rank-row-clickable:hover{background:#ffffffb8;box-shadow:0 10px 24px #5a91aa1a}.report-rank-icon,.report-member-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:999px;color:#fff;box-shadow:0 8px 18px #5a91aa29}.report-rank-icon svg{display:block;filter:drop-shadow(0 1px 1px rgba(47,58,74,.18))}.report-rank-icon-muted{color:#456f82;background:#eaf4f8}.report-member-avatar{color:#456f82;background:linear-gradient(135deg,#fceaf2,#e5f5fa);font-weight:780}.report-rank-main{min-width:0;display:grid;gap:7px}.report-rank-main strong{color:#456f82;font-size:14px;font-weight:740;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-rank-main small{color:#7f8b96;font-size:12px;font-weight:650}.report-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#78b4d224}.report-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(135deg,#f3c9d8,#b8d4e0)}.report-rank-side{display:grid;justify-items:end;gap:4px;text-align:right}.report-rank-side strong{color:var(--color-money-blue);font-size:14px;font-weight:760}.report-rank-side span{color:#6f7d88;font-size:12px;font-weight:650}.report-rank-chevron{color:#456f82b8}.bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;align-items:end;background:#2f3a4a38;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bottom-sheet{width:min(100%,520px);max-height:min(78vh,620px);margin:0 auto;overflow:auto;border-radius:28px 28px 0 0;border:1px solid rgba(120,180,210,.18);border-bottom:0;padding:10px 18px calc(22px + env(safe-area-inset-bottom));background:linear-gradient(135deg,#fceaf2f5,#f8fbfdfa 48%,#e5f5faf5);box-shadow:0 -18px 48px #5a91aa2e}.sheet-handle{width:42px;height:5px;margin:0 auto 12px;border-radius:999px;background:#5f708047}.report-member-sheet{display:grid;gap:10px}.report-member-option{min-height:52px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid rgba(120,180,210,.14);border-radius:18px;padding:0 14px;color:#456f82;background:#ffffff94;text-align:left}.report-member-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:740}.report-member-option small{color:#7f8b96;font-size:12px;font-weight:650}.report-member-option-active{border-color:#78b4d247;background:#ffffffc7;box-shadow:0 10px 22px #5a91aa1a}.report-error-panel{display:grid;justify-items:center;gap:14px;text-align:center}.report-reload-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(120,180,210,.18);border-radius:999px;padding:0 15px;color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 10px 22px #5a91aa1f;font-size:13px;font-weight:760;transition:transform .16s ease,box-shadow .16s ease}.report-skeleton-card,.report-skeleton-panel{overflow:hidden}.report-skeleton-line,.report-skeleton-avatar,.report-skeleton-donut,.report-skeleton-progress{position:relative;overflow:hidden;border-radius:999px;background:#78b4d224}.report-skeleton-line:after,.report-skeleton-avatar:after,.report-skeleton-donut:after,.report-skeleton-progress:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.54) 50%,transparent 100%);animation:nacre-shimmer 1.45s ease-in-out infinite}.report-skeleton-line{display:block;height:12px}.report-skeleton-line-xs{width:42px}.report-skeleton-line-sm{width:78px}.report-skeleton-line-md{width:min(140px,72%)}.report-skeleton-line-lg{width:min(210px,78%);height:34px}.report-skeleton-line-title{width:108px;height:16px}.report-skeleton-tab{flex:0 0 68px;height:36px}.report-skeleton-line-side{width:84px;height:14px}.report-skeleton-avatar{width:46px;height:46px}.report-skeleton-donut{width:196px;height:196px;margin:0 auto;border-radius:999px;background:radial-gradient(circle at center,#ffffffc7 0,#ffffffc7 45%,#78b4d22e 46%,#78b4d22e 57%,#ffffff7a 58%,#ffffff7a)}.report-skeleton-progress{display:block;height:8px}.report-skeleton-row{pointer-events:none}@keyframes nacre-shimmer{to{transform:translate(100%)}}.category-detail-page{padding-bottom:104px}.category-detail-hero{display:grid;justify-items:center;gap:9px;border:1px solid var(--color-border);border-radius:24px;padding:20px 18px;text-align:center;background:linear-gradient(135deg,#fceaf2b8,#ffffffbd 48%,#e5f5fac2);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.category-detail-total-card{gap:10px}.category-detail-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.category-detail-meta span{min-height:28px;display:inline-flex;align-items:center;border:1px solid rgba(120,180,210,.16);border-radius:999px;padding:0 10px;color:#456f82;background:#ffffff94;font-size:12px;font-weight:700}.category-detail-hero strong{color:var(--color-money-blue);font-size:34px;font-weight:780}.category-detail-hero small{color:#7f8b96;font-size:12px;font-weight:650}.category-detail-record-list{gap:10px}.category-detail-record-row{box-shadow:none;touch-action:auto}.stats-transfer-list{display:grid;gap:10px}.stats-transfer-row{min-height:72px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 13px;background:#ffffff9e;border:1px solid rgba(120,180,210,.12)}.stats-transfer-main{min-width:0;display:grid;gap:4px}.stats-transfer-main strong{color:var(--color-text);font-size:15px;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-transfer-main span{color:#6f7d88;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-transfer-main small{color:#7f8b96;font-size:12px;font-weight:560}.stats-transfer-row-amount{color:#8ca7e8;font-size:16px;font-weight:760}.record-list{display:grid;gap:10px}.record-swipe{position:relative;overflow:hidden;border-radius:18px;background:transparent;isolation:isolate;touch-action:pan-y}.record-swipe-actions{position:absolute;inset:0 0 0 auto;width:144px;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;pointer-events:none;transform:translate(100%);transition:transform .18s ease}.record-swipe-open .record-swipe-actions{pointer-events:auto;transform:translate(0)}.record-action-button{min-width:0;min-height:68px;display:grid;place-items:center;color:#456f82;font-size:13px;font-weight:760}.record-action-edit{background:#b8d4e0}.record-action-delete{border-radius:0 18px 18px 0;background:#e8b8c2;color:#8a4f5c}.record-row{position:relative;z-index:2;min-height:68px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;border-radius:18px;padding:12px 14px;background:#ffffffeb;border:1px solid rgba(120,180,210,.16);box-shadow:0 8px 18px #6e96aa0f;touch-action:pan-y;transition:transform .18s ease;will-change:transform;-webkit-user-select:none;user-select:none}.record-swipe-dragging .record-row{transition:none}.record-category-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:18px;color:#fff;box-shadow:0 10px 20px #6e96aa21}.record-row-main,.record-row-side{min-width:0;display:grid;gap:4px}.record-row-main strong{color:var(--color-text);font-size:15px;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-row-main span{color:#6f7d88;font-size:12px}.record-row-main small{color:#7f8b96;font-size:12px;font-weight:560}.record-row-main span,.record-row-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-note-preview{display:inline;color:inherit;-webkit-user-select:none;user-select:none;touch-action:manipulation;cursor:default}.record-note-preview:active{color:#456f82}.record-row-side{justify-items:end;align-content:center;text-align:right}.record-row-side strong{color:var(--color-money-blue);font-size:16px;font-weight:760}.record-row-side small{max-width:86px;overflow:hidden;color:#7f8b96;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.record-row-side .record-amount-income{color:#d79ab2}.record-row-side .record-amount-transfer{color:#8ca7e8}.soft-panel,.record-form-panel,.account-form-panel{padding:18px}.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.panel-title-row h2{flex:0 0 auto;font-size:16px;font-weight:700}.calendar-title-actions{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.calendar-mode-toggle{flex:0 0 auto;display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;border:1px solid rgba(120,180,210,.16);border-radius:999px;padding:3px;background:#ffffff8f}.calendar-mode-option{min-height:28px;min-width:44px;border-radius:999px;padding:0 9px;color:#5f7f92;font-size:12px;font-weight:760;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.calendar-mode-option:active{transform:translateY(1px)}.calendar-mode-option-active{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 7px 16px #5a91aa1a}.calendar-filter-label{flex:0 0 auto;min-height:28px;display:inline-flex;align-items:center;border-radius:999px;padding:0 10px;color:#456f82;background:linear-gradient(135deg,#fceaf2b8,#e5f5fabd);font-size:12px;font-weight:700}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays{margin-bottom:7px}.calendar-weekdays span{text-align:center;color:#6f7d88;font-size:11px;font-weight:700}.calendar-day{aspect-ratio:1;min-width:0;display:grid;place-items:center;align-content:center;gap:3px;border-radius:14px;background:#ffffff75;color:var(--color-text);font-size:13px;border:1px solid rgba(120,180,210,.08);transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.calendar-day:not(.calendar-day-empty):active{transform:translateY(1px)}.calendar-day-empty{background:transparent;border-color:transparent;pointer-events:none}.calendar-day-number{color:#456f82ad;font-size:11px;font-weight:700;line-height:1}.calendar-day-amount{max-width:calc(100% + 8px);min-width:0;color:#5fa7c8;font-size:12.5px;font-weight:800;line-height:1;letter-spacing:0;overflow:visible;text-overflow:clip;white-space:nowrap;cursor:pointer}.calendar-day-has-expense{background:#ffffff9e;border-color:#78b4d224}.calendar-day-today{border-color:#5fa7c84d;box-shadow:inset 0 0 0 1px #5fa7c829}.calendar-day-selected{background:linear-gradient(135deg,#fceaf2e6,#f8fbfdf5 48%,#e5f5faeb);border-color:#5fa7c852;box-shadow:0 10px 22px #5a91aa21}.calendar-day-selected .calendar-day-number{color:#456f82}.calendar-clear-filter{min-height:28px;border-radius:999px;padding:0 10px;color:#456f82;background:#ffffff9e;border:1px solid rgba(120,180,210,.16);font-size:12px;font-weight:700}.nacre-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:22px;background:#2f3a4a2e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nacre-mini-dialog,.nacre-note-dialog{width:min(328px,100%);display:grid;gap:14px;border:1px solid rgba(120,180,210,.18);border-radius:24px;padding:18px;background:linear-gradient(135deg,#fceaf2f0,#fffffff5 48%,#e5f5faf2);box-shadow:0 22px 48px #5a91aa38;color:#456f82}.nacre-mini-dialog-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.nacre-mini-dialog-header span{min-width:0;color:#6f7d88;font-size:13px;font-weight:740;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nacre-mini-dialog-header button{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:999px;color:#5f7f92;background:#ffffff9e;border:1px solid rgba(120,180,210,.15);font-size:20px;line-height:1}.nacre-mini-dialog strong{color:#456f82;font-size:20px;font-weight:780;line-height:1.35}.nacre-note-dialog p{max-height:min(44vh,320px);margin:0;overflow:auto;color:#2f3a4a;font-size:15px;line-height:1.75;white-space:pre-wrap;word-break:break-word}.nacre-anchored-popover{position:fixed;z-index:78;display:grid;gap:8px;border:1px solid rgba(120,180,210,.18);border-radius:18px;padding:14px 42px 14px 15px;background:linear-gradient(135deg,#fceaf2f5,#fffffff7,#e5f5faf5);box-shadow:0 16px 34px #5a91aa38;color:#456f82;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nacre-anchored-popover-above{transform:translateY(-100%)}.nacre-anchored-popover:after{content:"";position:absolute;left:var(--popover-arrow-left);width:12px;height:12px;background:#fffffff5;border-right:1px solid rgba(120,180,210,.16);border-bottom:1px solid rgba(120,180,210,.16);transform:translate(-50%) rotate(45deg)}.nacre-anchored-popover-below:after{top:-6px;border-right:0;border-bottom:0;border-left:1px solid rgba(120,180,210,.16);border-top:1px solid rgba(120,180,210,.16)}.nacre-anchored-popover-above:after{bottom:-6px}.nacre-anchored-popover>span{min-width:0;color:#6f7d88;font-size:12px;font-weight:760;line-height:1.25}.nacre-anchored-popover>strong{color:#456f82;font-size:15px;font-weight:780;line-height:1.4}.nacre-anchored-popover-close{position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;border-radius:999px;color:#5f7f92;background:#ffffffa3;border:1px solid rgba(120,180,210,.14);font-size:18px;line-height:1}.record-note-popover p{max-height:min(36vh,240px);margin:0;overflow:auto;color:#2f3a4a;font-size:14px;line-height:1.68;white-space:pre-wrap;word-break:break-word}.daily-bills-sheet{display:grid;gap:14px;max-height:min(74vh,620px);overflow-x:hidden}.daily-bills-sheet-header{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.daily-bills-sheet-header>div{min-width:0;display:grid;gap:3px}.daily-bills-sheet-header span{min-width:0;overflow:hidden;color:#6f7d88;font-size:12px;font-weight:720;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.daily-bills-sheet-header h2{min-width:0;overflow:hidden;color:#456f82;font-size:18px;font-weight:780;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.daily-bills-close{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;color:#5f7f92;background:#ffffffa3;border:1px solid rgba(120,180,210,.15)}.daily-bills-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.daily-bills-summary>div{min-width:0;display:grid;gap:4px;border:1px solid rgba(120,180,210,.14);border-radius:18px;padding:12px;background:#ffffff94}.daily-bills-summary span{color:#6f7d88;font-size:12px;font-weight:700}.daily-bills-summary strong{min-width:0;overflow:hidden;color:#456f82;font-size:18px;font-weight:780;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.daily-bills-list{display:grid;gap:10px;min-width:0}.daily-bills-row{width:100%;min-width:0;min-height:72px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid rgba(120,180,210,.15);border-radius:18px;padding:12px 13px;background:#ffffffb8;box-shadow:0 8px 18px #6e96aa0f;text-align:left;transition:transform .16s ease,background .16s ease}.daily-bills-row:active{transform:translateY(1px);background:#ffffffe0}.daily-bills-row-main,.daily-bills-row-side{min-width:0;display:grid;gap:4px}.daily-bills-row-main strong{min-width:0;overflow:hidden;color:var(--color-text);font-size:15px;font-weight:740;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.daily-bills-row-main small,.daily-bills-row-main span{min-width:0;overflow:hidden;color:#6f7d88;font-size:12px;font-weight:620;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.daily-bills-row-main small{color:#5f7f92}.daily-bills-row-side{justify-items:end;text-align:right}.daily-bills-row-side strong{color:var(--color-money-blue);font-size:16px;font-weight:780;line-height:1.25;white-space:nowrap}.daily-bills-row-side .record-amount-income{color:#d79ab2}.daily-bills-row-side .record-amount-transfer{color:#8ca7e8}.records-title-actions{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.record-filter-button{min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;border:1px solid rgba(120,180,210,.16);padding:0 11px;color:#456f82;background:#ffffff9e;font-size:12px;font-weight:760;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.record-filter-button:active{transform:translateY(1px)}.record-filter-button-active{background:linear-gradient(135deg,#fceaf2e6,#f8fbfdf5 48%,#e5f5faeb);box-shadow:0 8px 18px #5a91aa1f}.record-filter-sheet{display:grid;gap:14px}.record-filter-sheet-header{display:flex;align-items:end;justify-content:space-between;gap:12px}.record-filter-sheet-header h2,.record-filter-sheet-header strong{color:#456f82;font-size:18px;font-weight:760}.record-filter-sheet-header span{color:#7f8b96;font-size:12px;font-weight:680}.record-filter-search{display:grid;gap:7px}.record-filter-search span,.record-filter-section h3{color:#456f82;font-size:13px;font-weight:760}.record-filter-search input{width:100%;min-height:44px;border:1px solid rgba(120,180,210,.18);border-radius:16px;padding:0 14px;color:#456f82;background:#ffffffa8;font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.record-filter-search input:focus{border-color:#5fa7c857;background:#ffffffd1;box-shadow:0 0 0 3px #5fa7c81a}.record-filter-section{display:grid;gap:9px}.record-filter-chip-grid{display:flex;flex-wrap:wrap;gap:8px}.record-filter-chip{min-height:34px;max-width:100%;border:1px solid rgba(120,180,210,.14);border-radius:999px;padding:0 12px;color:#5f7f92;background:#ffffff94;font-size:12px;font-weight:720;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.record-filter-chip:active{transform:translateY(1px)}.record-filter-chip-active{color:#456f82;border-color:#5fa7c847;background:linear-gradient(135deg,#fceaf2e6,#f8fbfdf5 48%,#e5f5faeb);box-shadow:0 7px 16px #5a91aa1a}.record-filter-muted{margin:0;color:#7f8b96;font-size:12px;font-weight:620}.record-filter-actions{position:sticky;bottom:calc(-22px - env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;padding-top:6px;background:linear-gradient(180deg,#f8fbfd00,#f8fbfdf0 30%,#e5f5faf5)}.record-filter-reset,.record-filter-apply{min-height:44px;border-radius:999px;font-size:14px;font-weight:760;transition:transform .16s ease,box-shadow .16s ease}.record-filter-reset:active,.record-filter-apply:active{transform:translateY(1px)}.record-filter-reset{color:#5f7f92;background:#ffffffa3;border:1px solid rgba(120,180,210,.16)}.record-filter-apply{color:#456f82;background:linear-gradient(135deg,#f3c9d8,#b8d4e0);box-shadow:0 10px 24px #5a91aa29}.subpage-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.subpage-header>div{min-width:0;display:grid;gap:3px}.subpage-header span{color:var(--color-text);font-size:20px;font-weight:800}.subpage-header small{color:#7f8b96;font-size:12px;font-weight:660}.bill-search-page{gap:14px}.bill-search-bar{min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:20px;padding:7px 8px 7px 14px;color:#7fa6b6;background:#ffffffad;border:1px solid rgba(120,180,210,.14);box-shadow:0 10px 24px #5a91aa14}.bill-search-bar input{min-width:0;color:#2f3a4a;font-size:14px;font-weight:680}.bill-filter-trigger{min-height:38px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:0 11px;color:#5f7f92;background:#ecf7fba8;font-size:12px;font-weight:760;white-space:nowrap}.bill-filter-trigger-active{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 8px 18px #5a91aa1f}.bill-search-summary{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.bill-search-summary span,.bill-search-summary button{min-height:28px;display:inline-flex;align-items:center;border-radius:999px;padding:0 10px;font-size:11.5px;font-weight:720}.bill-search-summary span{color:#456f82;background:#ecf7fbb8}.bill-search-summary button{color:#c98f9a;background:#fceaf2b8}.bill-search-results{display:grid;gap:12px}.bill-search-result-list{display:grid;gap:9px}.bill-search-result-row{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:20px;padding:10px 12px;color:#2f3a4a;background:#ffffff94;border:1px solid rgba(120,180,210,.12);box-shadow:0 8px 20px #5a91aa0f;text-align:left}.bill-search-result-main{min-width:0;display:grid;gap:3px}.bill-search-result-main strong,.bill-search-result-main small,.bill-search-result-main em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bill-search-result-main strong{color:#456f82;font-size:14px;font-style:normal;font-weight:780}.bill-search-result-main small{color:#7f8b96;font-size:11.5px;font-weight:650}.bill-search-result-main em{color:#5f7080;font-size:12px;font-style:normal;font-weight:660}.bill-search-result-amount{color:var(--color-expense);font-size:14px;font-weight:800;white-space:nowrap}.bill-search-result-side{min-width:0;display:grid;justify-items:end;gap:3px;text-align:right}.bill-search-result-side small{max-width:82px;overflow:hidden;color:#7f8b96;font-size:10.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.bill-search-result-amount-income{color:var(--color-income)}.bill-search-result-amount-transfer{color:#6f7d88}.bill-search-load-more{min-height:42px;border-radius:999px;color:#456f82;background:#ffffff9e;border:1px solid rgba(120,180,210,.14);font-size:13px;font-weight:760}.bill-search-filter-sheet{display:grid;gap:14px}.bill-search-range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bill-search-range-grid label{min-width:0;display:grid;gap:6px}.bill-search-range-grid span{color:#6f7d88;font-size:12px;font-weight:680}.bill-search-range-grid input{width:100%;min-height:40px;border-radius:15px;padding:0 11px;color:#456f82;background:#ffffffad;border:1px solid rgba(120,180,210,.14);font-size:13px;font-weight:680}.calendar-day:focus-visible,.bottom-nav-item:focus-visible,.icon-button:focus-visible,.button-soft:focus-visible,.field-row:focus-visible{outline:2px solid rgba(95,167,200,.38);outline-offset:2px}.empty-state{min-height:96px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--color-text-soft)}.empty-state strong{font-size:15px;color:var(--color-text)}.empty-state p{max-width:280px;font-size:13px;line-height:1.55}.segmented-control{min-height:52px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;border-radius:999px;background:#ffffff80;border:1px solid var(--color-border)}.segment{min-height:40px;border-radius:999px;background:transparent;color:var(--color-text-soft);font-weight:650}.segment-active{background:var(--gradient-tab-active);color:var(--tab-active-text);box-shadow:0 8px 18px #6aaecb1a}.amount-field,.auth-form label{display:grid;gap:8px}.amount-field{position:sticky;top:8px;z-index:6;border-radius:22px;padding:7px 10px;background:#ffffffc7;border:1px solid rgba(120,180,210,.14);box-shadow:0 12px 26px #5a91aa1a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.amount-field span{color:var(--color-text-soft);font-size:13px}.auth-form span{color:#4f6272;font-size:13px;font-weight:600}.amount-display-button{width:100%;min-height:50px;border-radius:18px;padding:0 16px;background:#ffffffa8;color:var(--color-money-blue);font-size:30px;font-weight:720;text-align:left;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amount-display-placeholder{color:#5fa7c894}.amount-field small{margin-top:-2px;color:#7f8b96;font-size:12px;font-weight:680}.amount-keypad-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:34;display:grid;align-items:end;pointer-events:none}.amount-keypad-sheet{width:min(100%,480px);max-height:min(42vh,270px);justify-self:center;display:grid;gap:5px;position:relative;border-radius:24px 24px 0 0;padding:6px 10px calc(14px + env(safe-area-inset-bottom));overflow:visible;pointer-events:auto;background:#fffffff0;border:1px solid rgba(120,180,210,.16);box-shadow:0 -18px 38px #50789124;animation:amount-keypad-rise .18s ease-out}.amount-keypad-sheet .sheet-handle{width:32px;height:4px;margin-bottom:0}.amount-keypad-header{display:flex;align-items:center;justify-content:flex-end;min-height:28px;z-index:1}.amount-keypad-header button{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ffffff9e}.amount-keypad{display:grid;grid-template-columns:minmax(0,3fr) minmax(56px,.82fr);gap:6px;border-radius:16px;padding:6px;background:#ffffff7a;border:1px solid rgba(120,180,210,.12)}.amount-keypad-digits,.amount-keypad-ops{display:grid;gap:6px}.amount-keypad-digits{grid-template-columns:repeat(3,minmax(0,1fr))}.amount-keypad-ops{grid-template-rows:repeat(5,minmax(0,1fr))}.amount-key{min-height:34px;border-radius:12px;color:#2f3a4a;background:#ffffffc7;border:1px solid rgba(120,180,210,.1);box-shadow:0 8px 18px #6e96aa12;font-size:18px;font-weight:720;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.amount-key:active{transform:translateY(1px);background:#ecf7fbc7}.amount-key-operator{color:#456f82;background:linear-gradient(135deg,#fceaf2bd,#ffffffd1 48%,#e5f5fac7)}.amount-key-delete{color:#5f7f92}.amount-key-equals{min-height:34px;color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);font-size:14px;font-weight:780}@keyframes amount-keypad-rise{0%{transform:translateY(16px);opacity:.78}to{transform:translateY(0);opacity:1}}.field-list{display:grid;gap:10px;margin:18px 0}.field-row,.note-field{min-height:52px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:18px;padding:0 14px;background:#ffffff8c;color:var(--color-text);text-align:left}.note-field{grid-template-columns:24px max-content minmax(0,1fr)}.field-row svg,.note-field svg{color:#78b4cc}.field-row>span,.note-field>span{white-space:nowrap}.field-row strong{color:var(--color-text-soft);font-size:13px;font-weight:550}.account-picker-field{width:100%;grid-template-columns:24px max-content minmax(0,1fr);border:0;font:inherit}.account-picker-field>span{white-space:nowrap}.account-picker-field strong{min-width:0;width:100%;justify-self:end;color:var(--color-text);font-size:14px;font-weight:680;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.account-picker-field:disabled{opacity:.72}.account-picker-field:not(:disabled):active{transform:translateY(1px)}.note-field input{min-width:0;width:100%;text-align:right;background:transparent;color:var(--color-text)}.account-simple-form-panel{gap:14px}.account-name-field{grid-template-columns:24px minmax(0,1fr)}.account-name-field input{text-align:left}.account-error-panel{display:grid;gap:12px}.account-error-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-error-actions button{min-height:42px;border-radius:999px;color:#456f82;background:#ffffffa3;border:1px solid rgba(120,180,210,.16);font-size:13px;font-weight:760}.account-error-actions button:last-child{background:linear-gradient(135deg,#f3c9d8,#b8d4e0)}.field-row select,.field-row .date-field-display{min-width:0;width:100%;background:transparent;color:var(--color-text);text-align:right;font-weight:650}.date-field{position:relative;min-width:0;display:block;width:100%}.date-field-display{width:100%;min-width:0;cursor:pointer;color:#2f3a4a;font-size:14px;font-weight:650;text-align:right}.date-field-display:disabled{cursor:not-allowed;opacity:.62}.date-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;align-items:end;background:#2f3a4a38;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.date-picker-panel{width:min(100%,520px);margin:0 auto;border:1px solid rgba(120,180,210,.18);border-bottom:0;border-radius:28px 28px 0 0;padding:10px 18px calc(20px + env(safe-area-inset-bottom));background:linear-gradient(135deg,#fceaf2f5,#f8fbfdfa 48%,#e5f5faf5);box-shadow:0 -18px 48px #5a91aa2e}.date-picker-header{min-height:42px;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:8px;margin-bottom:10px}.date-picker-header button{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ffffff94;border:1px solid rgba(120,180,210,.14)}.date-picker-header strong{text-align:center;color:#456f82;font-size:16px;font-weight:780}.date-picker-weekdays,.date-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.date-picker-weekdays{margin-bottom:8px}.date-picker-weekdays span{text-align:center;color:#6f7d88;font-size:12px;font-weight:720}.date-picker-day{aspect-ratio:1;min-width:0;display:grid;place-items:center;border:1px solid rgba(120,180,210,.1);border-radius:16px;color:#456f82;background:#ffffff85;font-size:14px;font-weight:720;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.date-picker-day:active,.date-picker-header button:active,.date-picker-actions button:active{transform:translateY(1px)}.date-picker-day-empty{background:transparent;border-color:transparent;pointer-events:none}.date-picker-day-today{border-color:#5fa7c84d;box-shadow:inset 0 0 0 1px #5fa7c824}.date-picker-day-selected{color:#456f82;border-color:#5fa7c852;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 10px 22px #5a91aa24}.date-picker-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.date-picker-actions button{min-height:42px;border-radius:999px;font-size:14px;font-weight:760;transition:transform .16s ease,box-shadow .16s ease}.date-picker-cancel{color:#6f7d88;background:#ffffff94;border:1px solid rgba(120,180,210,.14)}.date-picker-confirm{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);border:1px solid rgba(120,180,210,.18);box-shadow:0 10px 22px #5a91aa1f}.field-row-select,.field-row-date{grid-template-columns:24px minmax(70px,1fr) minmax(110px,1.2fr)}.account-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;display:grid;align-items:end;background:#2f3a4a2e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.account-picker-sheet{width:min(100%,480px);max-height:min(68vh,520px);justify-self:center;display:grid;gap:14px;border-radius:28px 28px 0 0;padding:14px 16px calc(18px + env(safe-area-inset-bottom));background:#ffffffe6;border:1px solid rgba(120,180,210,.16);box-shadow:0 -18px 38px #50789124}.account-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-picker-header div{min-width:0;display:grid;gap:3px}.account-picker-header strong{color:#456f82;font-size:17px;font-weight:760}.account-picker-header span{color:#6f7d88;font-size:12px;font-weight:650}.account-picker-header button{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ffffff9e}.account-picker-list{max-height:min(48vh,380px);display:grid;gap:9px;overflow-y:auto;padding-right:2px}.account-picker-option{min-width:0;min-height:58px;display:grid;grid-template-columns:42px minmax(0,1fr) 22px;align-items:center;gap:11px;border:1px solid rgba(120,180,210,.12);border-radius:18px;padding:8px 12px 8px 9px;background:#ffffff94;color:#456f82;text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.account-picker-option:active{transform:translateY(1px)}.account-picker-option-active{border-color:#5fa7c857;background:linear-gradient(135deg,#fceaf2ad,#ffffffc7 48%,#e5f5fab3);box-shadow:0 10px 22px #5a91aa1a}.account-picker-dot{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;color:#fff;font-size:15px;font-weight:780;box-shadow:0 8px 18px #6e96aa1f}.account-picker-option div{min-width:0;display:grid;gap:3px}.account-picker-option strong,.account-picker-option small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-picker-option strong{color:var(--color-text);font-size:14px;font-weight:740}.account-picker-option small{color:#7f8b96;font-size:12px;font-weight:640}.account-picker-option svg{justify-self:end;color:#5fa7c8}.account-picker-empty{min-height:86px;display:grid;place-items:center;border-radius:18px;background:#ffffff75;border:1px dashed rgba(120,180,210,.2);color:#6f7d88;font-size:13px;font-weight:680}.quick-note-placeholder{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;border-radius:18px;padding:11px 12px;background:#ffffff70;border:1px dashed rgba(120,180,210,.16)}.quick-note-placeholder>span{color:#456f82;font-size:13px;font-weight:740}.quick-note-placeholder div{min-width:0;display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.quick-note-placeholder div::-webkit-scrollbar{display:none}.quick-note-placeholder button{flex:0 0 auto;min-height:30px;border-radius:999px;padding:0 11px;color:#5f7f92;background:#ffffff9e;border:1px solid rgba(120,180,210,.13);font-size:12px;font-weight:720}.note-preset-panel{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;border-radius:18px;padding:11px 12px;background:#ffffff80;border:1px solid rgba(120,180,210,.13)}.note-preset-panel>span{color:#456f82;font-size:13px;font-weight:740}.note-preset-scroll{min-width:0;display:flex;align-items:center;gap:7px;overflow-x:auto;scrollbar-width:none}.note-preset-scroll::-webkit-scrollbar{display:none}.note-preset-scroll small{color:#7a8a96;font-size:12px;font-weight:650}.note-preset-chip{flex:0 0 auto;min-height:30px;display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:0 11px;color:#456f82;background:#ffffffad;border:1px solid rgba(120,180,210,.14);box-shadow:0 8px 18px #6f9aac14;font-size:12px;font-weight:730}.note-preset-chip:active{transform:translateY(1px)}.note-preset-action-chip{color:#5f7f92;background:linear-gradient(135deg,#fff1f7d1,#eaf7fcdb)}.note-preset-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:18px;background:#54707e2e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.note-preset-dialog{width:min(420px,100%);max-height:min(72vh,520px);display:grid;gap:14px;border-radius:24px;padding:18px;background:linear-gradient(145deg,#ffffffeb,#f4fafce6);border:1px solid rgba(255,255,255,.76);box-shadow:0 24px 64px #4f748438}.note-preset-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.note-preset-dialog-header div{display:grid;gap:4px}.note-preset-dialog-header strong{color:#314f60;font-size:16px;font-weight:780}.note-preset-dialog-header span{color:#7a8a96;font-size:12px;font-weight:660}.note-preset-dialog-header button{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#5f7f92;background:#ffffffb8;border:1px solid rgba(120,180,210,.14)}.note-preset-input{display:grid;gap:8px}.note-preset-input span{color:#456f82;font-size:13px;font-weight:720}.note-preset-input input{min-height:46px;border:0;outline:none;border-radius:16px;padding:0 14px;color:#314f60;background:#ffffffb8;box-shadow:inset 0 0 0 1px #78b4d21f;font-size:15px;font-weight:680}.note-preset-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.note-preset-dialog-actions button{min-height:42px;border-radius:16px;border:1px solid rgba(120,180,210,.14);color:#5f7f92;background:#ffffffad;font-size:14px;font-weight:740}.note-preset-dialog-actions button:last-child{color:#314f60;background:linear-gradient(135deg,#ffe4efe6,#e0f5fceb);box-shadow:0 12px 26px #6f9aac24}.note-preset-dialog-actions button:disabled,.note-preset-manage-item button:disabled{cursor:not-allowed;opacity:.58}.note-preset-manage-list{display:grid;gap:8px;max-height:42vh;overflow-y:auto;padding-right:2px}.note-preset-manage-item{min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:16px;padding:8px 8px 8px 12px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.note-preset-manage-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#314f60;font-size:14px;font-weight:720}.note-preset-manage-item button{min-height:30px;display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:0 10px;color:#b65f73;background:#ffeef4d1;border:1px solid rgba(214,137,160,.2);font-size:12px;font-weight:720}.note-preset-manage-empty{min-height:82px;display:grid;place-items:center;border-radius:18px;color:#7a8a96;background:#ffffff80;border:1px dashed rgba(120,180,210,.18);font-size:13px;font-weight:680}.category-picker-panel{display:grid;gap:12px;border-radius:20px;padding:14px;background:#ffffff80;border:1px solid rgba(120,180,210,.14)}.category-picker-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.category-picker-title-text{min-width:0;display:grid;gap:3px}.category-picker-title span{color:#456f82;font-size:14px;font-weight:740}.category-picker-title strong{min-width:0;color:#6f7d88;font-size:12px;font-weight:680;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-picker-mode-toggle{flex:0 0 auto;display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;border:1px solid rgba(120,180,210,.16);border-radius:999px;padding:3px;background:#ffffff8f}.category-picker-mode-option{min-height:28px;min-width:66px;border-radius:999px;padding:0 9px;color:#5f7f92;font-size:11.5px;font-weight:760;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.category-picker-mode-option:active{transform:translateY(1px)}.category-picker-mode-option-active{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);box-shadow:0 7px 16px #5a91aa1a}.category-icon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 7px}.category-icon-tile{min-width:0;min-height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:16px;padding:4px 2px;background:transparent;border:1px solid transparent;color:#5f7080}.category-skeleton-grid{pointer-events:none}.category-icon-skeleton{min-width:0;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border-radius:18px;background:#ffffff6b;border:1px solid rgba(120,180,210,.08)}.category-icon-skeleton span,.category-icon-skeleton small{display:block;border-radius:999px;background:linear-gradient(90deg,#ecf7fb94,#ffffffd1,#fceaf280);background-size:220% 100%;animation:nacre-skeleton-shimmer 1.35s ease-in-out infinite}.category-icon-skeleton span{width:44px;height:44px}.category-icon-skeleton small{width:48px;height:10px}.category-icon-tile span{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;font-size:15px;font-weight:780;box-shadow:0 8px 18px #6e96aa1a}.category-icon-tile span svg,.category-manage-tile span svg,.category-form-icon-tile span svg,.record-category-icon svg{display:block;flex-shrink:0;filter:drop-shadow(0 1px 1px rgba(47,58,74,.18))}.category-none-tile span{background:#eaf4f8;color:#456f82;box-shadow:0 8px 18px #5a91aa1a}.category-none-tile span svg{filter:none}.category-icon-tile small{width:100%;color:currentColor;font-size:11.5px;font-weight:700;line-height:1.18;text-align:center;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.category-icon-tile-active{border-color:transparent;background:transparent;color:#456f82;box-shadow:none}.category-icon-tile-active>span{box-shadow:0 0 0 3px #78bedc2e,0 8px 18px #6e96aa1f;transform:translateY(-1px)}.category-sortable-grid .category-icon-tile{cursor:grab;touch-action:none}.category-sortable-grid .category-icon-tile:active{cursor:grabbing}.category-icon-tile-sorting{border-color:#78b4d23d;background:#ffffffa3}.category-icon-tile-dragging{position:relative;z-index:5;opacity:.96;box-shadow:0 18px 34px #5a91aa33}.category-icon-tile-dragging span{transform:scale(1.05)}.category-add-tile span{background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82}.category-action-tile span{background:#ecf7fbc7;color:#456f82}.category-picker-empty{min-height:86px;display:grid;place-items:center;gap:10px;border-radius:18px;background:#ffffff6b;border:1px dashed rgba(120,180,210,.22);color:#6f7d88;font-size:13px;font-weight:680}.category-picker-empty button{min-height:36px;border-radius:999px;padding:0 14px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82;font-size:13px;font-weight:760;box-shadow:0 8px 18px #6e96aa1a}.category-inline-panel{grid-column:1 / -1;display:grid;gap:12px;border-radius:20px;padding:11px 12px;background:linear-gradient(135deg,#fceaf270,#ffffff94 48%,#e5f5fa80);border:1px solid rgba(120,180,210,.14);box-shadow:0 8px 18px #5a91aa12}.category-inline-panel-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.category-inline-panel-header span{min-width:0;color:#456f82;font-size:13px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-inline-panel-header small{flex:0 0 auto;color:#7f8b96;font-size:11px;font-weight:650}.category-inline-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 6px}.category-inline-chip{min-width:0;min-height:66px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:16px;padding:3px 1px;color:#5f7080;background:transparent;border:1px solid transparent;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.category-inline-chip:active{transform:translateY(1px)}.category-inline-chip span{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:999px;color:#fff;box-shadow:0 6px 14px #5a91aa1a}.category-inline-chip strong{width:100%;max-width:70px;color:currentColor;font-size:11px;font-weight:760;line-height:1.15;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-inline-chip-active{color:#456f82;border-color:transparent;background:transparent;box-shadow:none}.category-inline-chip-active>span{box-shadow:0 0 0 3px #78bedc2e,0 6px 14px #5a91aa1f;transform:translateY(-1px)}.category-inline-none-chip span,.category-inline-action-chip span{background:#eaf4f8;color:#456f82}@keyframes nacre-skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.category-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;align-items:end;background:#2f3a4a2e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.category-sheet{width:min(100%,480px);justify-self:center;display:grid;gap:16px;border-radius:28px 28px 0 0;padding:18px 18px calc(20px + env(safe-area-inset-bottom));background:#ffffffe0;border:1px solid rgba(120,180,210,.16);box-shadow:0 -18px 38px #50789124}.category-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.category-sheet-header div{display:grid;gap:3px}.category-sheet-header strong{color:#456f82;font-size:17px;font-weight:760}.category-sheet-header span{color:#6f7d88;font-size:12px;font-weight:650}.category-sheet-header button{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ffffff9e}.category-sheet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 7px;max-height:min(52vh,420px);overflow-y:auto;padding-bottom:2px}@media (min-width: 390px){.category-icon-grid,.category-sheet-grid,.category-inline-options{grid-template-columns:repeat(5,minmax(0,1fr))}}.default-category-sync-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid rgba(158,199,216,.32);border-radius:22px;background:#ffffffb8;box-shadow:0 16px 34px #8498a621}.default-category-sync-panel div{display:grid;gap:4px}.default-category-sync-panel strong{color:var(--ink);font-size:15px}.default-category-sync-panel span{color:var(--muted);font-size:12px;line-height:1.5}.default-category-sync-panel button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;border:0;border-radius:999px;padding:10px 14px;color:#537486;background:linear-gradient(135deg,#eaf4f8fa,#fff1f6f5);box-shadow:0 10px 24px #8498a629;font-weight:800}.default-category-sync-panel button:disabled{cursor:not-allowed;opacity:.62}.default-category-sync-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:flex-end;justify-content:center;padding:18px;background:#4b5b6733;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.default-category-sync-dialog{width:min(620px,100%);max-height:min(82vh,720px);overflow:auto;border:1px solid rgba(255,255,255,.72);border-radius:28px;padding:20px;background:#fffcf8f0;box-shadow:0 26px 60px #4c5c6938}.default-category-sync-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.default-category-sync-header div{display:grid;gap:3px}.default-category-sync-header strong{color:var(--ink);font-size:18px}.default-category-sync-header span,.default-category-sync-note,.default-category-sync-section p,.default-category-sync-empty span{color:var(--muted);font-size:13px;line-height:1.55}.default-category-sync-header button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:50%;color:#6a7c86;background:#eaf4f8e0}.default-category-sync-note{margin:14px 0;padding:12px 14px;border-radius:18px;background:#eaf4f8ad}.default-category-sync-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.default-category-sync-summary span{padding:10px;border-radius:16px;color:#537486;background:#ffffffc7;text-align:center;font-size:12px;font-weight:800}.default-category-sync-empty{display:grid;gap:4px;margin:10px 0;padding:14px;border-radius:18px;background:#ffffffb3}.default-category-sync-empty strong{color:var(--ink)}.default-category-sync-section{display:grid;gap:9px;margin-top:14px}.default-category-sync-section h3{margin:0;color:var(--ink);font-size:15px}.default-category-sync-section-warning h3{color:#bd6f83}.default-category-sync-list{display:grid;gap:10px}.default-category-sync-list-compact{gap:7px}.default-category-sync-group{display:grid;gap:8px;padding:12px;border-radius:18px;background:#ffffffc2}.default-category-sync-group strong{color:var(--ink);font-size:14px}.default-category-sync-group div{display:flex;flex-wrap:wrap;gap:6px}.default-category-sync-group span,.default-category-sync-group small{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:5px 9px;color:#637785;background:#eaf4f8cc;font-size:12px;font-weight:700}.default-category-sync-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;margin-top:18px}.default-category-sync-actions button{min-height:44px;border:0;border-radius:16px;font-weight:900}.default-category-sync-actions button:first-child{color:#687986;background:#eaf4f8e6}.default-category-sync-actions button:last-child{color:#fff;background:linear-gradient(135deg,#9ec7d8,#d79ab2);box-shadow:0 14px 28px #d79ab23d}.default-category-sync-actions button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none}.button-soft{width:100%;min-height:50px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-button);background:var(--gradient-button-soft);color:#3f8eaf;font-weight:720;box-shadow:0 12px 24px #6baecb1f}.button-soft:disabled{box-shadow:none}.add-record-skeleton-page{min-height:calc(100vh - 160px)}.skeleton-segmented-control{min-height:44px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-radius:999px;padding:5px;background:#ffffff7a;border:1px solid rgba(120,180,210,.1)}.skeleton-segmented-control span,.amount-skeleton span,.amount-skeleton strong,.line-skeleton,.field-row-skeleton span,.field-row-skeleton strong,.button-skeleton{display:block;border-radius:999px;background:linear-gradient(90deg,#ecf7fb94,#ffffffd1,#fceaf280);background-size:220% 100%;animation:nacre-skeleton-shimmer 1.35s ease-in-out infinite}.skeleton-segmented-control span{min-height:34px}.add-record-page-skeleton{pointer-events:none}.amount-skeleton{min-height:112px;display:grid;align-content:center;justify-items:center;gap:16px;border-radius:var(--radius-card);background:#ffffff80;border:1px solid rgba(120,180,210,.14)}.amount-skeleton span{width:54px;height:14px}.amount-skeleton strong{width:132px;height:34px}.line-skeleton-sm{width:72px;height:14px}.line-skeleton-md{width:96px;height:12px}.field-row-skeleton{min-height:52px;display:flex;justify-content:space-between}.field-row-skeleton span{width:94px;height:14px}.field-row-skeleton strong{width:126px;height:14px}.button-skeleton{width:100%;height:50px}.account-form-panel{display:grid;gap:12px}.category-edit-form-panel{scroll-margin-top:16px}.category-icon-select-panel{display:grid;gap:10px}.category-form-section-title{display:inline-flex;align-items:center;gap:7px;color:#456f82;font-size:14px;font-weight:760}.category-parent-hint{min-height:42px;display:inline-flex;align-items:center;gap:8px;border-radius:16px;padding:9px 12px;background:#ecf7fba8;border:1px solid rgba(120,180,210,.16);color:#456f82;font-size:13px;font-weight:720}.category-form-icon-grid{max-height:min(36vh,320px);overflow-y:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;border-radius:20px;padding:10px;background:#ffffff61;border:1px solid rgba(120,180,210,.12)}.category-form-icon-tile{min-width:0;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:18px;padding:7px 4px;color:#5f7080;border:1px solid transparent}.category-form-icon-tile span{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:999px;color:#456f82;background:#ecf7fbdb;border:1px solid rgba(120,180,210,.18);box-shadow:0 8px 18px #6e96aa1f;transition:transform .16s ease}.category-form-icon-tile small{width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;color:#6f7d88;font-size:11px;font-weight:680;line-height:1.16;text-align:center}.category-form-icon-tile-active{background:#ecf7fbc2;border-color:#5fa7c86b;box-shadow:0 0 0 3px #78bedc1f}.category-form-icon-tile-active span{color:#fff;border-color:transparent;transform:scale(1.08);box-shadow:0 12px 24px #5a91aa2e}.category-edit-page{gap:14px}.category-edit-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px}.category-edit-header>div{min-width:0;display:grid;gap:3px;text-align:center}.category-edit-header strong{overflow:hidden;color:#2f3a4a;font-size:18px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.category-edit-header span{overflow:hidden;color:#6f7d88;font-size:12px;font-weight:640;text-overflow:ellipsis;white-space:nowrap}.category-edit-confirm{min-height:36px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:0 13px;color:#456f82;background:linear-gradient(135deg,#ecf7fbe6,#ffffffc7);border:1px solid rgba(95,167,200,.24);font-size:13px;font-weight:780;box-shadow:0 10px 22px #5a91aa1f}.category-edit-confirm:disabled{opacity:.58;box-shadow:none}.category-edit-hero,.category-edit-section{border-radius:24px;padding:16px;background:#ffffff75;border:1px solid rgba(120,180,210,.12);box-shadow:0 14px 34px #6e96aa14}.category-edit-hero{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:14px}.category-edit-icon-preview{width:72px;height:72px;display:grid;place-items:center;border-radius:999px;color:#fff;box-shadow:inset 0 0 0 1px #ffffff6b,0 16px 30px #5a91aa29}.category-edit-icon-preview-emoji svg{width:58px;height:58px}.category-edit-name-field{min-width:0;display:grid;gap:8px}.category-edit-name-field span,.category-edit-section-title{color:#456f82;font-size:13px;font-weight:760}.category-edit-name-field input{height:44px;border-radius:16px;padding:0 13px;background:#ffffffb3;color:#2f3a4a;font-size:16px;font-weight:760}.category-edit-section{display:grid;gap:12px}.category-edit-section-title{display:inline-flex;align-items:center;gap:7px}.category-icon-picker{display:grid;gap:10px}.category-icon-search{min-height:42px;display:flex;align-items:center;gap:9px;border-radius:16px;padding:0 12px;background:#ffffffad;border:1px solid rgba(120,180,210,.12);color:#7fa6b6}.category-icon-search input{min-width:0;flex:1;color:#2f3a4a;font-size:14px;font-weight:680}.category-icon-picker-tabs{display:inline-flex;width:fit-content;border-radius:999px;padding:3px;background:#ffffff9e;border:1px solid rgba(120,180,210,.12)}.category-icon-picker-tab{min-height:30px;border-radius:999px;padding:0 13px;color:#6f7d88;font-size:13px;font-weight:760}.category-icon-picker-tab-active{color:#456f82;background:#ecf7fbe0;box-shadow:0 8px 18px #6e96aa1a}.emoji-picker-panel{min-width:0;display:grid;gap:10px}.category-custom-emoji{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;border-radius:18px;padding:10px;background:#ffffff75;border:1px solid rgba(120,180,210,.1)}.category-custom-emoji label{min-width:0;display:grid;gap:6px}.category-custom-emoji span{color:#456f82;font-size:12px;font-weight:760}.category-custom-emoji input{width:100%;min-height:38px;border-radius:14px;padding:0 12px;color:#2f3a4a;background:#ffffffb8;border:1px solid rgba(120,180,210,.12);font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:18px;line-height:1}.category-custom-emoji input::placeholder{color:#8a98a4;font-family:inherit;font-size:13px}.category-custom-emoji button{min-height:38px;border-radius:999px;padding:0 14px;color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 45%,#e5f5fa);border:1px solid rgba(95,167,200,.22);font-size:13px;font-weight:780;box-shadow:0 8px 18px #6e96aa1a}.category-custom-emoji button:disabled{color:#94a0aa;background:#ffffff8a;box-shadow:none}.emoji-picker-debug{min-width:0;overflow:hidden;border-radius:14px;padding:8px 10px;color:#456f82;background:#ecf7fbbd;border:1px solid rgba(120,180,210,.14);font-size:12px;font-weight:760;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.emoji-category-layout{min-width:0;min-height:360px;max-height:min(50vh,500px);display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;overflow:hidden;border-radius:20px;padding:12px;background:#ffffff57;border:1px solid rgba(120,180,210,.1)}.emoji-category-sidebar{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:0}.emoji-category-button{min-width:0;min-height:32px;border-radius:999px;padding:0 5px;overflow:hidden;color:#6f7d88;background:#ffffff94;border:1px solid rgba(120,180,210,.12);font-size:10.5px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.emoji-category-button-active{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 45%,#e5f5fa);border-color:#5fa7c847;box-shadow:0 8px 18px #6e96aa24}.emoji-category-content,.emoji-search-panel{min-width:0;min-height:0;overflow-y:auto;display:grid;align-content:start;gap:9px}.emoji-search-panel{max-height:min(50vh,500px);border-radius:20px;padding:14px 12px 16px;background:#ffffff57;border:1px solid rgba(120,180,210,.1)}.emoji-group-list{min-width:0;max-height:min(50vh,500px);overflow-y:auto;display:grid;align-content:start;gap:18px;border-radius:20px;padding:14px 12px 16px;background:#ffffff57;border:1px solid rgba(120,180,210,.1)}.emoji-group-section{min-width:0;display:grid;gap:8px;padding-top:2px}.emoji-group-section+.emoji-group-section{border-top:1px solid rgba(120,180,210,.1);padding-top:14px}.emoji-group-title{display:block;margin:0 0 2px;padding:0 2px;color:#456f82;background:transparent;border:0;border-radius:0;box-shadow:none;font-size:13.5px;font-weight:760;line-height:1.35;text-align:left}.emoji-grid{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.emoji-option-button{min-width:0;min-height:64px;display:grid;place-items:center;align-content:center;gap:4px;border-radius:14px;padding:4px 2px;color:#5f7080;background:transparent;border:1px solid transparent}.emoji-option-symbol{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;color:#2f3a4a;background:transparent;border:1px solid transparent;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:26px;font-weight:400;line-height:1}.emoji-option-button small{width:100%;overflow:hidden;color:#6f7d88;font-size:10.5px;font-weight:680;line-height:1.16;text-align:center;text-overflow:ellipsis;white-space:nowrap}.emoji-option-button-active .emoji-option-symbol{box-shadow:0 0 0 3px #78bedc2e;transform:translateY(-1px)}.category-icon-library-layout{min-height:360px;max-height:min(50vh,500px);display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;border-radius:20px;padding:12px;background:#ffffff6b;border:1px solid rgba(120,180,210,.1)}.category-icon-library-layout-search{grid-template-columns:minmax(0,1fr)}.category-icon-library-layout-all-groups{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden}.category-icon-library-all-groups{min-width:0;min-height:0;max-height:100%;overflow-y:auto;display:grid;align-content:start;gap:16px;padding-right:2px}.category-icon-group-rail{overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:0}.category-icon-group-button{min-height:32px;border-radius:999px;padding:0 5px;color:#6f7d88;background:#ffffff94;border:1px solid rgba(120,180,210,.12);font-size:10.5px;font-weight:760;white-space:nowrap}.category-icon-group-button-active{color:#456f82;background:linear-gradient(135deg,#fceaf2,#f8fbfd 45%,#e5f5fa);border-color:#5fa7c847;box-shadow:0 8px 18px #6e96aa24}.category-icon-library-group{min-width:0;overflow-y:auto;display:grid;align-content:start;gap:9px}.category-icon-library-group h3{margin:0;color:#456f82;font-size:13px;font-weight:800}.category-icon-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.category-icon-library-tile{min-width:0;min-height:64px;display:grid;place-items:center;align-content:center;gap:4px;border-radius:14px;padding:4px 2px;color:#5f7080;border:1px solid transparent;background:transparent}.category-icon-library-tile span{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ecf7fbdb;border:1px solid rgba(120,180,210,.16);box-shadow:0 8px 18px #6e96aa1a;transition:transform .16s ease}.category-icon-emoji{display:block;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:26px;font-weight:400;line-height:1;transform:translateY(1px)}.category-icon-library-tile small{width:100%;overflow:hidden;color:#6f7d88;font-size:10.5px;font-weight:680;line-height:1.16;text-align:center;text-overflow:ellipsis;white-space:nowrap}.category-icon-library-tile-active{background:transparent;border-color:transparent;box-shadow:none}.category-icon-library-tile-active span{color:#fff;border-color:transparent;box-shadow:0 0 0 3px #78bedc2e,0 8px 18px #6e96aa1f;transform:translateY(-1px)}.category-icon-library-tile-active .category-icon-library-icon-none{color:#2f3a4a;background:transparent;border-color:transparent;box-shadow:0 0 0 3px #78bedc2e}.category-icon-empty{display:grid;gap:4px;border-radius:18px;padding:16px;background:#ffffff80;color:#6f7d88;text-align:center}.category-icon-empty strong{color:#456f82;font-size:14px}.category-edit-icon-preview-none,.category-icon-bubble-none,.record-category-icon-none,.report-rank-icon-none{color:#2f3a4a;background:transparent!important;border-color:transparent!important;box-shadow:none!important}.category-edit-icon-preview-none svg{width:62px;height:62px}.category-icon-bubble-none svg,.record-category-icon-none svg,.report-rank-icon-none svg{transform:scale(1.34)}.category-icon-tile-active>.category-icon-bubble-none,.category-manage-tile-active>.category-icon-bubble-none,.category-inline-chip-active>.category-icon-bubble-none{box-shadow:0 0 0 3px #78bedc2e!important}.category-parent-hint-standalone{margin-bottom:12px}.account-text-button{color:#6f7d88;font-size:13px;font-weight:700}.category-form-actions{display:inline-flex;align-items:center;gap:10px}.category-delete-text-button{display:inline-flex;align-items:center;gap:5px;color:#c98f9a;font-size:13px;font-weight:740}.account-color-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.category-color-row{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none}.category-color-row::-webkit-scrollbar{display:none}.account-color-chip{flex:0 0 auto;min-height:38px;display:grid;place-items:center;border-radius:16px;background:#ffffff80;border:1px solid rgba(120,180,210,.12)}.account-color-chip span{width:20px;height:20px;border-radius:999px;box-shadow:0 8px 16px #6e96aa1a}.account-color-chip-custom{grid-template-columns:auto auto;justify-content:center;gap:6px;padding-inline:8px}.account-color-chip-custom span{width:18px;height:18px}.account-color-chip-custom small{color:#5f7180;font-size:11px;font-weight:760}.account-color-chip-none{grid-template-columns:auto auto;justify-content:center;gap:6px;width:auto;min-width:104px;padding-inline:8px}.account-color-chip-none span{position:relative;width:18px;height:18px;border:1px dashed rgba(95,167,200,.46);background:#ffffffb8}.account-color-chip-none span:after{content:"";position:absolute;inset:8px 2px auto;height:1.5px;border-radius:999px;background:#d98ba4c2;transform:rotate(-38deg)}.account-color-chip-none small{color:#5f7180;font-size:11px;font-weight:760}.category-color-row .account-color-chip{width:42px;min-height:34px;border-radius:14px}.category-color-row .account-color-chip-custom{width:auto;min-width:82px}.category-color-row .account-color-chip-none{width:auto;min-width:104px}.account-color-chip-active{border-color:#5fa7c86b;box-shadow:0 0 0 3px #78bedc1f}.category-color-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:86;display:grid;place-items:center;padding:16px;background:#f5fafc47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.category-color-dialog{width:min(360px,100%);display:grid;gap:11px;border-radius:22px;padding:14px;background:linear-gradient(135deg,#fffbfde6,#f2fafddb);border:1px solid rgba(120,180,210,.18);box-shadow:0 18px 44px #3e5c6e2e}.category-color-dialog-header{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:10px}.category-color-dialog-header div,.category-color-preview div{min-width:0;display:grid;gap:3px}.category-color-dialog-header strong{color:#2f3a4a;font-size:16px;font-weight:780}.category-color-dialog-header span,.category-color-preview small,.category-color-hex-field span,.category-color-hex-field small{color:#6f7d88;font-size:12px;font-weight:620;line-height:1.5}.category-color-dialog-header button{width:32px;height:32px;display:grid;place-items:center;border-radius:14px;color:#6f7d88;background:#ffffff9e}.category-color-preview{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;border-radius:16px;padding:10px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.category-color-preview>span{width:40px;height:40px;border-radius:15px;box-shadow:inset 0 0 0 1px #ffffff85,0 10px 20px #5a91aa1f}.category-color-preview strong{color:#456f82;font-size:15px;font-weight:780;letter-spacing:.04em}.category-color-hex-field{display:grid;gap:6px}.category-color-hex-field input{height:38px;border-radius:14px;padding:0 12px;background:#ffffffb8;color:#2f3a4a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:14px;font-weight:760;text-transform:uppercase}.category-color-hex-field-error input{border-color:#d98ba47a;box-shadow:0 0 0 3px #d98ba41f}.category-color-hex-field-error small{color:#8a4f5c}.category-color-sliders{display:grid;gap:8px;border-radius:16px;padding:10px;background:#ffffff7a;border:1px solid rgba(120,180,210,.1)}.category-color-slider{display:grid;gap:4px}.category-color-slider span{display:flex;align-items:center;justify-content:space-between;color:#5f7180;font-size:12px;font-weight:760}.category-color-slider em{color:#456f82;font-style:normal;font-variant-numeric:tabular-nums}.category-color-slider input{width:100%;accent-color:#74B0D2}.category-color-dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.category-color-dialog-actions button{min-height:36px;border-radius:999px;color:#456f82;background:#ffffffad;font-weight:780}.category-color-dialog-actions button:last-child{background:var(--gradient-button-soft);box-shadow:0 10px 22px #6aaecb1f}.category-color-dialog-actions button:disabled{opacity:.52;transform:none;box-shadow:none}.account-list{display:grid;gap:10px}.account-swipe{position:relative;overflow:hidden;border-radius:18px;background:transparent}.account-swipe-actions{position:absolute;inset:0 0 0 auto;width:136px;z-index:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;transform:translate(100%);transition:transform .18s ease}.account-swipe-open .account-swipe-actions{transform:translate(0)}.account-row{position:relative;z-index:1;min-height:64px;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;border-radius:18px;padding:10px 12px;background:#ffffff94;border:1px solid rgba(120,180,210,.12);transition:transform .18s ease,box-shadow .18s ease;touch-action:pan-y}.account-swipe-open .account-row{box-shadow:0 12px 28px #5a91aa1a}.account-dot{width:34px;height:34px;border-radius:14px;box-shadow:0 8px 16px #6e96aa1a}.account-row div{min-width:0;display:grid;gap:3px}.account-row strong{color:var(--color-text);font-size:15px;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-row small{color:#6f7d88;font-size:12px;font-weight:620}.account-row-action{min-width:0;min-height:64px;display:grid;place-items:center;color:#456f82;font-size:13px;font-weight:760}.account-row-action-edit{background:#b8d4e0}.account-row-action-delete{border-radius:0 18px 18px 0;background:#e8b8c2;color:#8a4f5c}.account-sort-header{grid-template-columns:auto minmax(0,1fr) auto}.account-sort-done{min-width:64px}.account-sort-panel{gap:14px}.account-sort-panel .category-sort-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px}.account-sort-list{display:grid;gap:10px}.account-sort-row{min-height:68px;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:12px;border-radius:20px;padding:11px 12px;background:#ffffff9e;border:1px solid rgba(120,180,210,.14);box-shadow:0 10px 24px #6e96aa12;transition:box-shadow .16s ease,transform .16s ease,background .16s ease}.account-sort-row-dragging{background:#ffffffeb;box-shadow:0 18px 34px #5a91aa2e;transform:scale(1.015);z-index:2}.account-sort-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:16px;color:#fff;box-shadow:0 10px 18px #6e96aa1f}.account-sort-main{min-width:0;display:grid;gap:4px}.account-sort-main strong{color:var(--color-text);font-size:15px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-sort-main small{color:#6f7d88;font-size:12px;font-weight:640}.account-sort-handle{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;color:#8b98a3;background:#ffffff80;cursor:grab;touch-action:none}.account-sort-handle:active{cursor:grabbing;background:#e5f5fac2}.category-type-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;border-radius:999px;background:#ffffff80;border:1px solid var(--color-border)}.category-type-tab{min-height:40px;border-radius:999px;color:#6f7d88;font-weight:700}.category-type-tab-active{background:var(--gradient-tab-active);color:#456f82;box-shadow:0 8px 18px #6aaecb1a}.category-list{display:grid;gap:10px}.category-group{display:grid;gap:8px}.category-row{min-height:64px;display:grid;align-items:center;gap:10px;border-radius:18px;padding:10px 12px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.category-parent-row{grid-template-columns:32px 36px minmax(0,1fr) 38px 38px 38px}.category-child-list{display:grid;gap:8px;padding-left:30px}.category-child-row{grid-template-columns:36px minmax(0,1fr) 38px 38px;background:#ffffff70}.category-dot{display:grid;place-items:center;color:#456f82;font-size:10px;font-weight:760;overflow:hidden}.category-row div{min-width:0;display:grid;gap:3px}.category-row strong{color:var(--color-text);font-size:15px;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-row small,.category-child-empty{color:#6f7d88;font-size:12px;font-weight:620}.category-child-empty{margin:0;padding:10px 12px}.category-row button,.category-expand-button{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ffffff7a}.category-row button:last-child{color:#c98f9a}.category-manage-block{display:grid;gap:16px}.category-sort-toggle{min-height:34px;border-radius:999px;padding:0 14px;background:#ffffff94;border:1px solid rgba(120,180,210,.18);color:#456f82;font-size:13px;font-weight:760;box-shadow:0 8px 18px #6e96aa14}.category-sort-toggle-active{background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);border-color:#5fa7c84d;box-shadow:0 10px 24px #5a91aa24}.category-mode-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.category-manage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.category-manage-tile{position:relative;min-width:0;min-height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:16px;padding:5px 3px;background:transparent;border:1px solid transparent;color:#5f7080;cursor:pointer;-webkit-user-select:none;user-select:none}.category-sortable-grid .category-manage-tile{cursor:grab;touch-action:none}.category-sortable-grid .category-manage-tile:active{cursor:grabbing}.category-manage-tile-sorting{border-color:transparent;background:transparent}.category-manage-tile-dragging{position:relative;z-index:5;opacity:.96;box-shadow:0 18px 34px #5a91aa33}.category-manage-tile-dragging span{transform:scale(1.05)}.category-manage-tile span{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;box-shadow:0 8px 18px #6e96aa1a;transition:transform .18s ease}.category-manage-tile strong,.category-manage-tile small{width:100%;overflow:hidden;text-overflow:ellipsis;text-align:center}.category-manage-tile strong{color:#456f82;font-size:12.5px;font-weight:760;line-height:1.18;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.category-manage-tile small{color:#6f7d88;font-size:11px;font-weight:640}.category-manage-tile-active{background:transparent;border-color:transparent;box-shadow:none}.category-manage-tile-active>span{box-shadow:0 0 0 3px #78bedc2e,0 8px 18px #6e96aa1f;transform:translateY(-1px)}.category-tile-edit-indicator{position:absolute;top:6px;right:6px;width:25px;height:25px;display:grid;place-items:center;border-radius:999px;color:#456f82;background:#ecf7fbe0;border:1px solid rgba(95,167,200,.22);box-shadow:0 6px 14px #5a91aa1f}.category-tile-delete{position:absolute;top:6px;right:6px;width:25px;height:25px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(201,143,154,.24);background:#fceaf2d6;color:#c98f9a;box-shadow:0 6px 14px #c98f9a1f;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.category-tile-delete:hover{transform:translateY(-1px);background:#fce0ebeb;box-shadow:0 8px 18px #c98f9a29}.category-manage-add-tile span{background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82}.category-children-panel{display:grid;gap:12px;border-radius:22px;padding:14px;background:#ffffff6b;border:1px solid rgba(120,180,210,.12)}.category-children-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.category-children-title h3{color:#456f82;font-size:15px;font-weight:760}.category-children-title span{color:#6f7d88;font-size:12px;font-weight:620}.book-info-panel{display:grid;gap:12px}.managed-book-list{display:grid;gap:10px}.book-manage-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px}.book-manage-actions button,.book-manage-form-actions button,.book-switch-join-form>button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:0 12px;color:#456f82;font-size:13px;font-weight:760}.book-manage-actions button,.book-manage-form-actions button:first-child{background:#ffffff94;border:1px solid rgba(120,180,210,.18)}.book-manage-actions button:active,.book-manage-form-actions button:active,.book-switch-join-form>button:active{transform:translateY(1px)}.book-manage-action-form,.book-switch-join-form{display:grid;gap:12px;border-radius:18px;padding:14px;margin-bottom:12px;background:#ffffff7a;border:1px solid rgba(120,180,210,.14)}.book-manage-form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.book-manage-form-actions button:last-child,.book-switch-join-form>button{background:var(--gradient-button-soft);box-shadow:0 8px 18px #6aaecb1a}.managed-book-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;border-radius:18px;padding:8px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.managed-book-row>button:first-child{min-width:0;min-height:50px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-radius:15px;padding:0 11px;color:var(--color-text);text-align:left}.managed-book-row>button:first-child span{min-width:0;display:grid;gap:4px}.managed-book-row>button:first-child strong,.managed-book-row>button:first-child small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-book-row>button:first-child strong{color:#456f82;font-size:14px;font-weight:760}.managed-book-row>button:first-child small{color:#6f7d88;font-size:12px;font-weight:620}.managed-book-row>button:first-child em{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:6px 8px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82;font-size:11px;font-style:normal;font-weight:760}.managed-book-row-active{border-color:#5fa7c857;background:#ffffffbd}.managed-book-delete,.book-member-remove{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;padding:0 10px;background:#e8b8c257;color:#8a4f5c;font-size:12px;font-weight:760}.managed-book-delete:disabled,.book-member-remove:disabled{opacity:.62}.book-info-list{display:grid;gap:10px}.book-info-row{min-height:52px;display:grid;grid-template-columns:minmax(88px,.8fr) minmax(0,1.4fr);align-items:center;gap:12px;border-radius:18px;padding:10px 14px;background:#ffffff8c;border:1px solid rgba(120,180,210,.12)}.book-info-row span{color:#6f7d88;font-size:13px;font-weight:650}.book-info-row strong{min-width:0;color:#456f82;font-size:14px;font-weight:730;text-align:right;overflow-wrap:anywhere}.book-info-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px!important}.book-info-edit-row{grid-template-columns:minmax(88px,.6fr) minmax(0,1.8fr)}.book-name-value{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.book-name-value strong{min-width:0}.book-name-value button,.book-name-form button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;padding:0 10px;background:#ffffff94;color:#456f82;font-size:12px;font-weight:760}.book-name-form{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px}.book-name-form input{min-width:0;height:38px;border-radius:999px;padding:0 12px;background:#ffffffa8;color:#2f3a4a;font-weight:650;text-align:right}.book-name-form button:last-child{background:var(--gradient-button-soft);color:#456f82;box-shadow:0 8px 18px #6aaecb1a}.book-invite-pill{min-width:0;justify-self:end;display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:10px 14px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82;font-size:13px;font-weight:760;box-shadow:0 10px 24px #5a91aa24}.book-invite-pill:hover,.book-invite-pill:focus-visible{transform:translateY(-1px);box-shadow:0 12px 28px #5a91aa2e}.book-danger-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border-color:#d78ba03d;background:linear-gradient(135deg,#fffafbc7,#f6fcfeb8)}.book-danger-copy{min-width:0;display:grid;gap:5px}.book-danger-copy strong{color:#8a4f5c;font-size:15px;font-weight:780}.book-danger-copy span{color:#6f7d88;font-size:12px;font-weight:620;line-height:1.55}.book-danger-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:0 14px;background:#e8b8c261;color:#8a4f5c;font-size:13px;font-weight:780}.book-danger-button:hover,.book-danger-button:focus-visible{transform:translateY(-1px);box-shadow:0 12px 26px #b4697d1f}.book-delete-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:22px;background:#47576038;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.book-delete-dialog{width:min(420px,100%);display:grid;gap:16px;border-radius:24px;padding:18px;background:linear-gradient(135deg,#fffbfdf5,#f2fafdf0);border:1px solid rgba(120,180,210,.18);box-shadow:0 24px 60px #3e5c6e3d}.book-delete-header{display:grid;grid-template-columns:40px minmax(0,1fr) 36px;align-items:center;gap:10px}.book-delete-header>span{width:40px;height:40px;display:grid;place-items:center;border-radius:16px;background:#e8b8c261;color:#8a4f5c}.book-delete-header div{min-width:0;display:grid;gap:3px}.book-delete-header strong{color:#2f3a4a;font-size:17px;font-weight:780}.book-delete-header small,.book-delete-message,.book-delete-field span{color:#6f7d88;font-size:12px;font-weight:620;line-height:1.55}.book-delete-header button{width:36px;height:36px;display:grid;place-items:center;border-radius:14px;color:#6f7d88;background:#ffffff9e}.book-delete-message{margin:0}.book-delete-field{display:grid;gap:8px}.book-delete-field input{height:42px;border-radius:16px;padding:0 14px;background:#ffffffb8;color:#2f3a4a;font-size:14px;font-weight:680}.book-delete-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.book-delete-actions button{min-height:40px;border-radius:999px;color:#456f82;background:#ffffffad;font-weight:780}.book-delete-actions button:last-child{background:#e8b8c280;color:#8a4f5c}.book-delete-actions button:disabled{opacity:.52;transform:none;box-shadow:none}.book-member-list{display:grid;gap:10px}.book-member-row{min-height:82px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.book-member-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:15px;color:#456f82;background:#b8d4e0;box-shadow:0 8px 16px #6e96aa1a}.book-member-owner{background:#f0c9a9;color:#8b6a4f}.book-member-main{min-width:0;display:grid;gap:4px}.book-member-name-row{min-width:0;display:flex;align-items:center;gap:6px}.book-member-name-row strong{min-width:0;flex:0 1 auto;color:var(--color-text);font-size:15px;font-weight:730;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-member-name-row em{flex:0 0 auto;border-radius:999px;padding:3px 7px;background:#d8eef6b8;color:#456f82;font-size:11px;font-style:normal;font-weight:760}.book-member-row small,.book-member-row time{min-width:0;color:#6f7d88;font-size:12px;font-weight:620;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-member-row time{display:block}.book-role-pill{flex:0 0 auto;border-radius:999px;padding:7px 10px;background:#ffffff94;color:#456f82;font-size:12px;font-weight:760}.book-member-row .book-member-remove{flex:0 0 auto;width:72px;padding-inline:0;white-space:nowrap}.export-privacy-panel{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;color:#456f82}.export-privacy-panel svg{width:34px;height:34px;border-radius:14px;padding:8px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82}.export-privacy-panel p{color:#6f7d88;font-size:13px;font-weight:620;line-height:1.55}.export-option-panel{display:grid;gap:10px}.export-toggle-row{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 14px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.export-toggle-row span{min-width:0;display:grid;gap:4px}.export-toggle-row strong{color:#456f82;font-size:14px;font-weight:760}.export-toggle-row small{color:#7f8b96;font-size:12px;font-weight:620}.export-toggle-row input{width:44px;height:24px;accent-color:#5FA7C8}.export-card-grid{display:grid;gap:12px}.export-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:22px;padding:16px;background:#ffffffb8;border:1px solid rgba(120,180,210,.16);box-shadow:0 10px 24px #5a91aa17}.export-card-disabled{opacity:.72}.export-card-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82;box-shadow:0 8px 18px #6aaecb1a}.export-card div{min-width:0;display:grid;gap:5px}.export-card strong{color:#456f82;font-size:15px;font-weight:780}.export-card p{color:#6f7d88;font-size:12px;font-weight:620;line-height:1.45}.export-card button{min-height:38px;border-radius:999px;padding:0 13px;background:var(--gradient-button-soft);color:#456f82;font-size:12px;font-weight:780;box-shadow:0 8px 18px #6aaecb1a;white-space:nowrap}.export-card-disabled button{background:#ffffff9e;color:#8a7580}.export-card button:disabled{opacity:.66}.account-info-page{gap:14px}.account-profile-card{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:14px;border:1px solid rgba(120,180,210,.16);border-radius:26px;padding:18px;background:linear-gradient(135deg,#fceaf2bd,#f8fbfde6 46%,#e5f5fac7);box-shadow:0 14px 32px #6e96aa1f}.account-profile-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:22px;background:#ffffff94;color:#456f82;box-shadow:inset 0 0 0 1px #78b4d224}.account-profile-card div{min-width:0;display:grid;gap:5px}.account-profile-card strong{min-width:0;color:#456f82;font-size:20px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-profile-card span:last-child{min-width:0;color:#6f7d88;font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-info-panel,.account-action-panel{display:grid;gap:12px}.account-info-row{min-height:62px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 14px;background:#ffffff94;border:1px solid rgba(120,180,210,.12)}.account-info-row-muted{background:#ffffff6b}.account-info-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82}.account-info-row div{min-width:0;display:grid;gap:4px}.account-info-row small{color:#7f8b96;font-size:12px;font-weight:680}.account-info-row strong{min-width:0;color:#456f82;font-size:14px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-info-row-muted strong{color:#456f82a8;font-size:12px;font-weight:680}.account-mini-button,.account-form-actions button,.account-primary-button{border-radius:999px;color:#456f82;font-weight:780}.account-mini-button{min-height:34px;padding:0 12px;background:#ffffffa3;box-shadow:0 6px 14px #6aaecb14;white-space:nowrap}.account-action-panel p{margin:0;color:#6f7d88;font-size:12.5px;font-weight:620;line-height:1.5}.account-inline-form,.account-password-form{display:grid;gap:12px}.account-inline-form input,.account-password-form input{width:100%;min-height:48px;border:1px solid rgba(120,180,210,.18);border-radius:16px;padding:0 14px;background:#ffffffa8;color:#456f82;font-size:14px;font-weight:680}.account-inline-form input:focus,.account-password-form input:focus{outline:none;border-color:#5fa7c87a;box-shadow:0 0 0 3px #5fa7c81f}.account-form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-form-actions button,.account-primary-button{min-height:42px;background:var(--gradient-button-soft);box-shadow:0 8px 18px #6aaecb1a}.account-form-actions button:first-child{background:#ffffff9e;color:#6f7d88}.account-form-actions button:disabled,.account-primary-button:disabled{opacity:.66;box-shadow:none}.account-password-form label{display:grid;gap:8px}.account-password-form label span{color:#456f82;font-size:13px;font-weight:760}.account-primary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.bottom-nav{position:fixed;left:50%;bottom:0;z-index:10;width:min(100%,480px);transform:translate(-50%);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px 14px max(6px,env(safe-area-inset-bottom));border-top:1px solid rgba(120,150,170,.12);background:#ffffffc7;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.bottom-nav-item{min-height:50px;display:grid;place-items:center;gap:3px;border-radius:17px;color:#64727e;background:transparent}.bottom-nav-item svg{stroke-width:2.05}.bottom-nav-item span{color:currentColor;font-size:12.5px;font-weight:700}.bottom-nav-item-active{background:var(--gradient-button-soft);color:#3f6f84;box-shadow:0 10px 22px #6aaecb21}.bottom-nav-item-active svg{stroke-width:2.25}.bottom-nav-item-active span{font-weight:800}.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));z-index:20;max-width:min(360px,calc(100vw - 36px));min-height:44px;display:grid;place-items:center;padding:10px 18px;border-radius:999px;background:#2f3a4ae6;color:#fff;font-size:14px;opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:opacity .18s ease,transform .18s ease}.toast-visible{opacity:1;transform:translate(-50%)}.pwa-update-prompt{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));z-index:24;width:min(360px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid rgba(120,180,210,.18);border-radius:22px;padding:12px 12px 12px 16px;background:linear-gradient(135deg,#fceaf2f5,#f8fbfdfa 48%,#e5f5faf5);color:#456f82;box-shadow:0 16px 38px #5a91aa33;transform:translate(-50%)}.pwa-update-copy{min-width:0;display:grid;gap:3px}.pwa-update-prompt strong{font-size:14px;font-weight:780}.pwa-update-prompt span{color:#6f7d88;font-size:12px;font-weight:640}.pwa-update-prompt button{min-height:36px;border-radius:999px;padding:0 14px;color:#456f82;background:#ffffffad;border:1px solid rgba(120,180,210,.18);font-size:13px;font-weight:760;transition:transform .16s ease,background .16s ease}.pwa-update-actions{display:flex;align-items:center;gap:8px}.pwa-update-actions button:first-child{color:#6f7d88;background:#ffffff7a}.pwa-update-actions button:disabled{color:#94a0aa;box-shadow:none}.pwa-update-prompt button:active{transform:translateY(1px)}.app-shell:has(.auth-page){background:linear-gradient(135deg,#fbe6f0f5,#f7fbfdfa 45%,#dff3faf5)}.auth-page{min-height:calc(100vh - 120px);display:grid;align-content:center;justify-items:center;gap:22px}.auth-page>.nacre-logo-mark,.auth-page>.auth-brand{transform:translateY(8px)}.auth-page>.nacre-logo-mark{transform:translateY(28px)}.auth-page[aria-label=登录]{gap:18px;transform:translateY(12px)}.auth-page[aria-label=登录] .auth-form{margin-top:18px}.auth-page[aria-label=创建账号]{gap:14px;transform:translateY(40px)}.auth-page[aria-label=创建账号] .auth-form{margin-top:14px}.auth-brand{text-align:center}.auth-brand h1{font-size:38px}.auth-brand p{margin-top:4px}.auth-form{width:100%;display:grid;gap:14px;margin-top:22px;padding:20px;border-radius:var(--radius-card);background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.auth-form .button-soft{color:#5fa7c8}.auth-form input{width:100%;min-height:50px;border:1.5px solid rgba(120,180,210,.3);border-radius:18px;background:#ffffffb8;color:#2f3a4a;padding:0 14px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.auth-form input::placeholder{color:#4f62729e}.auth-form input:focus{border-color:#5fa7c88c;box-shadow:0 0 0 3px #78bedc24}.reset-password-page{position:relative}.reset-back-button{position:absolute;top:max(18px,env(safe-area-inset-top));left:18px;width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:#ffffff9e;color:#456f82;box-shadow:0 8px 22px #6e96aa1f}.reset-password-form{width:min(100%,360px)}.reset-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.reset-code-row input{min-width:0}.reset-code-row button{min-height:44px;border-radius:16px;padding:0 12px;background:var(--gradient-button-soft);color:#456f82;font-size:12px;font-weight:780;box-shadow:0 8px 18px #6aaecb1a;white-space:nowrap}.reset-code-row button:disabled{opacity:.66;box-shadow:none}.reset-password-hint{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;border-radius:16px;padding:10px 12px;background:#e5f5fa94;color:#456f82;font-size:12px;font-weight:650;line-height:1.45}.reset-password-hint svg{color:#5fa7c8}.auth-links{display:grid;gap:10px;justify-items:center}.auth-links button{min-height:32px;background:transparent;color:var(--color-money-blue)}.auth-links span{display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#5f7080b8;font-size:12px;font-weight:650}.book-select-page{padding-top:20px}.book-select-title{display:grid;gap:6px;padding:4px 2px 2px}.book-select-title h2{font-size:24px;font-weight:760}.book-select-title p{max-width:330px;color:var(--color-text-soft);font-size:13px;line-height:1.55}.book-select-grid{display:grid;gap:12px}.book-select-card{min-height:112px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:6px 12px;align-items:center;text-align:left;border-radius:var(--radius-card);padding:18px;background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-card);color:var(--color-text)}.book-select-card-active{border-color:#5fa7c85c;background:#ffffffd6;box-shadow:0 12px 28px #6baecb21}.book-select-card svg{grid-row:span 2;color:var(--color-money-blue)}.book-select-card span{font-weight:720}.book-select-card p{color:var(--color-text-soft);font-size:13px}.book-action-panel,.book-switch-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.book-action-panel{display:grid;gap:14px;padding:18px}.book-action-field{display:grid;gap:8px}.book-action-field span{color:#4f6272;font-size:13px;font-weight:600}.book-action-field input{width:100%;min-height:50px;border:1.5px solid rgba(120,180,210,.3);border-radius:18px;background:#ffffffb8;color:#2f3a4a;padding:0 14px}.book-action-field input::placeholder{color:#4f62729e}.book-action-panel .button-soft{color:#5fa7c8}.book-switch-panel{display:grid;gap:12px;padding:16px}.invite-code{min-height:38px;border-radius:999px;background:linear-gradient(135deg,#fceaf2,#f8fbfd 48%,#e5f5fa);color:#456f82;font-size:13px;font-weight:650;padding:10px 14px;box-shadow:0 10px 24px #5a91aa24;white-space:nowrap;transition:box-shadow .18s ease,opacity .18s ease,transform .18s ease}.invite-code:hover,.invite-code:focus-visible{opacity:.94;transform:translateY(-1px);box-shadow:0 12px 28px #5a91aa2e}.book-switch-list,.book-switch-actions{display:grid;gap:9px}.book-switch-row,.book-switch-actions button{min-height:48px;display:grid;align-items:center;border:1px solid rgba(120,180,210,.2);border-radius:18px;background:#ffffff94;color:var(--color-text);text-align:left}.book-switch-row{grid-template-columns:minmax(0,1fr) auto 20px;gap:8px;padding:0 14px}.book-switch-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:680}.book-switch-row small{color:var(--color-text-soft);font-size:12px}.book-switch-row svg{color:var(--color-money-blue)}.book-switch-row-active{border-color:#5fa7c861;background:#ffffffd1}.book-switch-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.book-switch-actions button{grid-template-columns:18px minmax(0,1fr);gap:6px;padding:0 12px;color:#5fa7c8;font-size:13px;font-weight:700}.book-switch-actions span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 480px){.book-switch-actions,.book-manage-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.book-switch-actions button:nth-child(3),.book-manage-actions button:nth-child(3){grid-column:1 / -1}.book-switch-actions span{overflow:visible;text-overflow:clip}.book-switch-actions button,.book-manage-actions button{min-width:0;padding-inline:10px;white-space:nowrap}}.book-switch-join-form{margin-bottom:0}.settings-title{display:grid;gap:4px}.settings-title h2{font-size:22px;font-weight:760}.settings-title p{color:var(--color-text-soft);font-size:13px}.settings-list{display:grid;gap:10px}.settings-row{min-height:66px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:12px;text-align:left;border:1px solid var(--color-border);border-radius:20px;padding:10px 16px;background:#ffffff94;color:var(--color-text);box-shadow:0 8px 20px #6e96aa0f}.settings-row svg{width:20px;height:20px;justify-self:center;color:#e99ab6}.settings-row span{display:grid;gap:4px}.settings-row strong{color:#456f82;font-size:14.5px;font-weight:740}.settings-row small{color:#6f7d88;font-size:12.5px;font-weight:620;line-height:1.35}.settings-version{margin:2px 0 0;color:#5f70809e;font-size:12px;font-weight:650;text-align:center}.install-app-panel{display:grid;gap:14px;border:1px solid rgba(120,180,210,.16);border-radius:24px;padding:16px;background:linear-gradient(135deg,#fceaf2b8,#f8fbfddb 48%,#e5f5fac2);box-shadow:0 12px 28px #6e96aa1a}.install-app-heading{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px}.install-app-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#fff;background:linear-gradient(135deg,#d79ab2,#6fafc8);box-shadow:0 10px 22px #5a91aa24}.install-app-heading div{min-width:0;display:grid;gap:4px}.install-app-heading strong{color:#456f82;font-size:15px;font-weight:780}.install-app-heading small,.install-app-guide{color:#6f7d88;font-size:12.5px;font-weight:630;line-height:1.45}.install-app-primary{min-height:44px;border-radius:999px;color:#456f82;background:linear-gradient(135deg,#f3c9d8,#b8d4e0);box-shadow:0 10px 24px #5a91aa29;font-size:14px;font-weight:780}.install-app-guide{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;width:100%;text-align:left;border-radius:18px;padding:12px;background:#ffffff94;border:1px solid rgba(120,180,210,.14)}.install-app-guide svg{color:#5fa7c8}.install-guide-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:18px;background:#f7fafc5c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.install-guide-dialog{width:min(380px,100%);display:grid;gap:16px;border:1px solid rgba(120,180,210,.18);border-radius:26px;padding:18px;background:#ffffffe0;box-shadow:0 24px 60px #57788c33}.install-guide-header{display:grid;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:12px}.install-guide-header div{min-width:0;display:grid;gap:4px}.install-guide-header strong{color:#456f82;font-size:16px;font-weight:800}.install-guide-header small{color:#6f7d88;font-size:12.5px;font-weight:620;line-height:1.4}.install-guide-header button{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;color:#6f7d88;background:#f5f8fadb}.install-guide-steps{display:grid;gap:10px;margin:0;padding:0;list-style:none}.install-guide-steps li{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;border-radius:18px;padding:11px 12px;color:#5c6874;background:linear-gradient(135deg,#fcf4f8d1,#eff8fcbd);font-size:13px;font-weight:650;line-height:1.45}.install-guide-steps svg{margin-top:2px;color:#64afcb}.install-guide-confirm{min-height:42px;border-radius:999px;color:#456f82;background:linear-gradient(135deg,#f3c9d8,#b8d4e0);font-size:14px;font-weight:800;box-shadow:0 12px 24px #5a91aa24}@media (max-width: 374px){.app-shell{--app-gutter: 14px}.brand-lockup{gap:6px}.brand-lockup h1{font-size:24px}.month-display span{font-size:15px}.summary-card{padding:17px}.summary-card strong{font-size:clamp(17px,5.8vw,22px)}.report-custom-range{grid-template-columns:1fr}.report-total-card strong{font-size:30px}.report-rank-row{grid-template-columns:44px minmax(0,1fr)}.report-rank-side{grid-column:2;justify-items:start;text-align:left}.report-rank-chevron{display:none}.report-skeleton-donut{width:176px;height:176px}.calendar-grid{gap:4px}.calendar-title-actions{gap:5px}.calendar-mode-option{min-width:38px;padding-inline:7px}.calendar-filter-label{display:none}.records-title-actions{gap:6px}.record-filter-button,.calendar-clear-filter{min-height:28px;padding-inline:9px}.record-filter-button svg{display:none}.record-filter-sheet{gap:12px;padding-inline:14px}.record-filter-chip{min-height:32px;padding-inline:10px;font-size:11.5px}.calendar-day{border-radius:12px}.calendar-day-number{font-size:10.5px}.calendar-day-amount{max-width:calc(100% + 10px);font-size:11.8px}.nacre-dialog-backdrop{align-items:end;padding:14px}.nacre-mini-dialog,.nacre-note-dialog{width:100%;border-radius:24px 24px 20px 20px}.nacre-anchored-popover{max-width:calc(100vw - 24px);padding:13px 40px 13px 14px;border-radius:17px}.record-note-popover p{max-height:32vh}.amount-field{top:6px;padding:6px 9px}.page-stack.amount-keypad-visible{padding-bottom:calc(252px + env(safe-area-inset-bottom))}.amount-display-button{min-height:46px;font-size:27px}.amount-keypad-sheet{max-height:min(42vh,258px);padding:5px 9px calc(14px + env(safe-area-inset-bottom))}.amount-keypad{gap:5px;padding:5px}.amount-keypad-digits,.amount-keypad-ops{gap:5px}.amount-key{min-height:30px;border-radius:11px;font-size:16px}.amount-key-equals{min-height:30px;font-size:13px}.category-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 5px}.category-icon-tile{min-height:66px;gap:5px;padding:3px 1px}.category-icon-tile span{width:42px;height:42px}.category-icon-tile small{font-size:11px}.category-picker-title{align-items:flex-start}.category-picker-mode-option{min-width:54px;padding-inline:7px;font-size:11px}.category-inline-panel{padding:11px}.category-inline-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 5px}.category-inline-chip{min-height:64px;padding-inline:0}.category-inline-chip span{width:38px;height:38px}.category-inline-panel-header{align-items:flex-start;flex-direction:column;gap:3px}.category-inline-panel-header small{flex:0 1 auto}.category-inline-chip strong{max-width:100%;font-size:10.5px}.account-picker-field{grid-template-columns:24px max-content minmax(0,1fr)}.account-picker-sheet{max-height:72vh;padding-inline:14px}.account-picker-list{max-height:52vh}.quick-note-placeholder,.note-preset-panel{grid-template-columns:38px minmax(0,1fr);padding-inline:10px}.note-preset-dialog-overlay{place-items:end center;padding:14px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.note-preset-dialog{width:100%;max-height:min(68vh,480px);border-radius:24px 24px 20px 20px;padding:16px}.note-preset-manage-list{max-height:44vh}.category-form-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:min(38vh,300px);padding:9px}.category-form-icon-tile{min-height:72px}.category-edit-header{grid-template-columns:40px minmax(0,1fr) auto;gap:8px}.category-edit-header strong{font-size:16px}.category-edit-confirm{min-height:34px;padding:0 11px}.category-edit-hero,.category-edit-section{border-radius:22px;padding:13px}.category-edit-hero{grid-template-columns:62px minmax(0,1fr);gap:12px}.category-edit-icon-preview{width:60px;height:60px;border-radius:999px}.category-edit-icon-preview-emoji svg{width:52px;height:52px}.category-icon-library-layout{min-height:330px;max-height:min(48vh,410px);grid-template-columns:58px minmax(0,1fr);padding:9px;gap:7px}.category-icon-library-layout-search{grid-template-columns:minmax(0,1fr)}.category-custom-emoji{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px}.category-custom-emoji button{padding:0 12px}.emoji-category-layout{min-height:330px;max-height:min(48vh,410px);grid-template-columns:58px minmax(0,1fr);padding:9px;gap:7px}.emoji-category-sidebar{gap:5px}.emoji-category-button{min-height:30px;padding:0 4px;font-size:10px}.emoji-search-panel{max-height:min(48vh,410px);padding:12px 9px 14px}.emoji-group-list{max-height:min(48vh,410px);padding:12px 9px 14px;gap:16px}.emoji-group-section+.emoji-group-section{padding-top:12px}.emoji-group-title{font-size:13px}.emoji-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.emoji-option-button{min-height:62px}.emoji-option-symbol{width:36px;height:36px;font-size:24px}.category-icon-group-rail{gap:5px}.category-icon-group-button{min-height:30px;padding:0 4px;font-size:10px}.category-icon-library-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.category-icon-library-tile{min-height:62px}.category-icon-library-tile span{width:36px;height:36px}.category-icon-library-tile small{font-size:10px}.category-color-dialog-overlay{align-items:end;padding:10px 10px calc(10px + env(safe-area-inset-bottom));background:#f5fafc3d;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.category-color-dialog{width:100%;max-height:min(62vh,430px);overflow-y:auto;border-radius:22px 22px 18px 18px;padding:13px;gap:10px}.category-color-preview{grid-template-columns:42px minmax(0,1fr);padding:8px}.category-color-preview>span{width:38px;height:38px;border-radius:14px}.category-color-sliders{gap:7px;padding:9px}.category-color-hex-field input{height:36px}.category-color-dialog-actions button{min-height:36px}.category-manage-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 6px}.category-manage-tile{min-height:74px;border-radius:16px;padding:4px 2px}.category-manage-tile span{width:42px;height:42px}.category-manage-tile strong{font-size:11.5px}.default-category-sync-panel{align-items:stretch;flex-direction:column;padding:14px;border-radius:20px}.default-category-sync-panel button{width:100%}.default-category-sync-overlay{padding:10px}.default-category-sync-dialog{max-height:min(84vh,680px);border-radius:24px;padding:16px}.default-category-sync-summary,.default-category-sync-actions{grid-template-columns:1fr}.category-children-title{align-items:start;flex-direction:column;gap:4px}.category-parent-row{grid-template-columns:28px 32px minmax(0,1fr) 34px 34px 34px;gap:7px;padding-inline:9px}.category-child-list{padding-left:22px}.category-child-row{grid-template-columns:32px minmax(0,1fr) 34px 34px;gap:7px;padding-inline:9px}.category-row button,.category-expand-button{width:34px;height:34px}.book-info-row{grid-template-columns:minmax(76px,.8fr) minmax(0,1.4fr);padding-inline:11px}.managed-book-row{grid-template-columns:1fr}.book-manage-actions,.book-switch-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.book-manage-actions button:nth-child(3),.book-switch-actions button:nth-child(3){grid-column:1 / -1}.pwa-update-prompt{bottom:calc(86px + env(safe-area-inset-bottom));grid-template-columns:1fr;justify-items:stretch;gap:10px}.pwa-update-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pwa-update-prompt button{width:100%}.install-app-panel{padding:14px}.install-guide-overlay{align-items:end;padding:14px 12px calc(14px + env(safe-area-inset-bottom));place-items:end center}.install-guide-dialog{border-radius:24px;padding:16px;gap:14px}.managed-book-delete{justify-self:end}.book-info-edit-row{grid-template-columns:1fr;align-items:stretch}.book-info-edit-row>span{margin-bottom:-2px}.book-name-value{justify-content:space-between}.book-name-form{grid-template-columns:1fr}.book-name-form input{text-align:left}.book-danger-panel{grid-template-columns:1fr;align-items:stretch}.book-danger-button{width:100%}.book-delete-overlay{align-items:end;padding:14px 12px calc(14px + env(safe-area-inset-bottom))}.book-delete-dialog{border-radius:22px;padding:16px;gap:14px}.book-delete-header{grid-template-columns:36px minmax(0,1fr) 34px}.book-delete-header>span{width:36px;height:36px;border-radius:14px}.book-delete-actions{gap:8px}.book-member-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;padding-inline:10px}.book-member-name-row{gap:5px}.book-role-pill{padding-inline:8px}.book-member-row .book-member-remove{width:64px}.export-card{grid-template-columns:42px minmax(0,1fr)}.export-card button{grid-column:2 / -1;justify-self:start}.account-sort-header{gap:8px}.account-sort-done{min-width:58px;padding-inline:11px}.account-sort-row{min-height:62px;grid-template-columns:38px minmax(0,1fr) 38px;gap:10px;padding:10px;border-radius:18px}.account-sort-icon,.account-sort-handle{width:36px;height:36px}.account-sort-icon{border-radius:14px}.account-profile-card{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:16px}.account-profile-avatar{width:52px;height:52px;border-radius:20px}.account-profile-card strong{font-size:18px}.account-info-row{grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:11px 12px}.account-info-icon{width:36px;height:36px;border-radius:14px}.account-info-row-muted{grid-template-columns:36px minmax(0,1fr)}.account-info-row-muted .account-mini-button{grid-column:2 / -1;justify-self:start}.account-form-actions{grid-template-columns:1fr}.reset-back-button{left:14px}.reset-code-row{grid-template-columns:1fr}.reset-code-row button{width:100%}.subpage-header span{font-size:18px}.bill-search-bar{min-height:50px;gap:8px;border-radius:18px;padding:6px 7px 6px 12px}.bill-search-bar input{font-size:13px}.bill-filter-trigger{min-height:34px;padding:0 9px;font-size:11.5px}.bill-search-result-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;border-radius:18px;padding:9px 10px}.bill-search-result-row .record-category-icon{width:38px;height:38px}.bill-search-result-main strong{font-size:13.5px}.bill-search-result-main small,.bill-search-result-main em{font-size:11px}.bill-search-result-amount{font-size:13px}.bill-search-range-grid{gap:8px}.bill-search-range-grid input{min-height:38px;padding:0 9px}}@media (min-width: 481px){body{background:var(--gradient-bg)}.app-shell{box-shadow:0 0 48px #6899ae1f}}
