:root,html[data-theme=light]{--bg:#f0f2f7;--panel:#ffffff;--panel-soft:#f7f9fe;--text:#121826;--muted:#5d6982;--brand:#b7902f;--brand-soft:#f8f0d8;--line:#d4dced;--danger:#b91c1c;--focus:#d2b259;--header-bg:rgba(250,251,255,0.9);--top-link:#172133;--top-link-hover:#0b1020;--surface-shadow:0 16px 36px rgba(12,18,31,0.08);color-scheme:light}html[data-theme=dark]{--bg:#090d16;--panel:rgba(14,19,31,0.86);--panel-soft:rgba(16,22,37,0.86);--text:#edf1f8;--muted:#98a7c1;--brand:#f3cc67;--brand-soft:rgba(243,204,103,0.17);--line:rgba(137,158,196,0.22);--danger:#ef6565;--focus:#f3cc67;--header-bg:rgba(7,10,18,0.78);--top-link:#dde6f7;--top-link-hover:#ffffff;--surface-shadow:0 24px 60px rgba(0,0,0,0.48);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Sora,Avenir Next,Segoe UI,sans-serif;overflow-x:hidden;background:radial-gradient(1050px 460px at -8% -24%,rgba(243,204,103,.26) 0,transparent 62%),radial-gradient(930px 380px at 108% -8%,rgba(84,126,228,.2) 0,transparent 60%),var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.container{width:min(1100px,92%);margin:0 auto}.page-actions{justify-content:space-between;gap:.7rem}.action-btn{width:auto;display:inline-flex;align-items:center;justify-content:center;gap:.38rem;border:1px solid #0b5f58;background:linear-gradient(135deg,#0c6f66,#0a8a7f);color:#fff;border-radius:12px;padding:.62rem .92rem;font-weight:700;font-size:.92rem;box-shadow:0 10px 22px rgba(12,111,102,.24);transition:transform .24s ease,filter .24s ease,box-shadow .24s ease,border-color .24s ease}.action-btn:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 14px 24px rgba(10,90,84,.3);border-color:#0a6a62}.action-btn.secondary{background:linear-gradient(135deg,#ffffff,#edf4ff);color:#0f2a5a;border-color:#bfd0ea;box-shadow:0 8px 16px rgba(30,58,138,.12)}.action-btn.secondary:hover{box-shadow:0 10px 18px rgba(30,58,138,.16);border-color:#9fb7dc}.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon){border:1px solid transparent;border-radius:10px;padding:.42rem .62rem;font-weight:700;color:#0f172a;transition:background .22s ease,border-color .22s ease,color .22s ease}.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon):focus-visible,.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon):hover{background:#eff7ff;border-color:#cadef6;color:#1e3a8a}.card{border:1px solid var(--line);border-radius:14px;padding:1rem;box-shadow:0 8px 24px rgba(20,50,80,.06);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;animation:cardIn .45s ease both}.card:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(20,50,80,.1);border-color:#bfd2e8}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.title{margin:0 0 .3rem;font-size:1.25rem}.title-with-icon{display:inline-flex;align-items:center;gap:.45rem}.title-icon{width:1.8rem;height:1.8rem;border-radius:10px;display:grid;place-items:center;background:#eef7ff;border:1px solid #c9def3;color:#1e3a8a}.muted{color:var(--muted)}button,input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:12px;padding:.7rem .8rem;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background-color .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px rgba(85,184,171,.18)}button{cursor:pointer;background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600;transition:transform .2s ease,filter .2s ease,box-shadow .2s ease;box-shadow:0 8px 18px rgba(12,111,102,.24)}button:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 11px 22px rgba(12,111,102,.3)}button.secondary{background:#fff;color:var(--text)}.row{display:flex;gap:.5rem;align-items:center}.between{justify-content:space-between}.stack{display:grid;grid-gap:.75rem;gap:.75rem}.home-shell{gap:1rem}.hero-card{background:linear-gradient(135deg,#f8fdff,#f0fbf8);overflow:hidden}.hero-grid{align-items:center}.home-title{font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.1;margin-bottom:.2rem}.hero-art{display:grid;grid-gap:.75rem;gap:.75rem;justify-items:center}.hero-art .sculpture-loader{min-height:270px;width:min(100%,360px);background:linear-gradient(160deg,#ffffff,#f3fbff)}.hero-stat{width:min(100%,360px);border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem;background:#fff;display:grid;grid-gap:.2rem;gap:.2rem}.hero-stat strong{font-size:.98rem}.hero-stat span{color:var(--muted);font-size:.85rem}.feature-grid{align-items:stretch}.feature-card{display:grid;grid-gap:.45rem;gap:.45rem}.home-footer{display:grid;grid-gap:.7rem;gap:.7rem;background:linear-gradient(120deg,#f8fcff,#f3fbf8)}.home-footer-title{display:grid;grid-gap:.35rem;gap:.35rem}.home-footer-links{display:flex;flex-wrap:wrap;gap:.6rem}.home-footer-link{display:inline-flex;align-items:center;gap:.42rem;border:1px solid #c7d8ee;background:#fff;border-radius:12px;padding:.55rem .75rem;font-weight:700;font-size:.9rem;box-shadow:0 6px 14px rgba(30,64,175,.09);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.home-footer-link:hover{transform:translateY(-1px);box-shadow:0 10px 18px rgba(30,64,175,.14)}.home-footer-link.linkedin{color:#0a66c2;border-color:#b5d0f0}.home-footer-link.github{color:#111827;border-color:#d5d8de}.feature-icon{width:2.1rem;height:2.1rem;border-radius:10px;display:grid;place-items:center;border:1px solid #c5d9ef;background:#eff7ff;color:#1e3a8a}.sculpture-loader{display:grid;place-items:center;min-height:180px;text-align:center}.banking-loader{position:relative;width:190px;height:130px;display:grid;place-items:center;margin-bottom:.55rem}.banking-card{position:absolute;left:8px;top:18px;width:120px;height:78px;border-radius:14px;background:linear-gradient(145deg,#ffffff,#e8f6ff);border:1px solid #c7def5;box-shadow:0 10px 18px rgba(29,78,216,.12);display:grid;align-content:center;grid-gap:.35rem;gap:.35rem;padding:.7rem;animation:cardPulse 2.4s ease-in-out infinite}.banking-chip{width:24px;height:16px;border-radius:4px;background:linear-gradient(120deg,#fbbf24,#f59e0b);border:1px solid rgba(255,255,255,.5)}.banking-lines{display:grid;grid-gap:.25rem;gap:.25rem}.banking-lines span{height:6px;border-radius:6px;background:#cfe3f7}.banking-lines span:first-child{width:74%}.banking-lines span:last-child{width:52%}.banking-bars{position:absolute;right:14px;bottom:12px;width:54px;height:70px;display:flex;align-items:flex-end;gap:6px}.banking-bars .bar{width:12px;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,#34d399,#0c6f66)}.banking-bars .bar-a{height:22px;animation:growA 1.8s ease-in-out infinite}.banking-bars .bar-b{height:36px;animation:growB 1.8s ease-in-out infinite}.banking-bars .bar-c{height:52px;animation:growC 1.8s ease-in-out infinite}.banking-coin{position:absolute;right:52px;top:4px;width:28px;height:28px;border-radius:999px;background:radial-gradient(circle at 30% 20%,#fde68a,#f59e0b);border:1px solid #fcd34d;display:grid;place-items:center;font-weight:800;color:#7c2d12;animation:coinMove 2.2s ease-in-out infinite}.banking-coin span{font-size:.82rem}@keyframes cardPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes coinMove{0%{transform:translate(0) scale(1);opacity:.8}45%{transform:translate(26px,52px) scale(1.05);opacity:1}to{transform:translate(0) scale(1);opacity:.8}}@keyframes growA{0%,to{height:22px}50%{height:30px}}@keyframes growB{0%,to{height:36px}50%{height:45px}}@keyframes growC{0%,to{height:52px}50%{height:62px}}@media (prefers-reduced-motion:reduce){.banking-bars .bar-a,.banking-bars .bar-b,.banking-bars .bar-c,.banking-card,.banking-coin,.login-btn-loading:after,.login-progress,.login-spinner,.skeleton-card:before{animation:none}}@keyframes cardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error{color:var(--danger);font-size:.85rem}.pill{font-size:.8rem;color:#115e59;border-radius:999px;padding:.25rem .55rem}.field{display:grid;grid-gap:.38rem;gap:.38rem}.field label{font-size:.86rem;color:#334155;font-weight:600;letter-spacing:.01em}.dob-wrap{position:relative}.dob-segments{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding-right:5.1rem;display:flex;align-items:center;gap:.4rem;padding-left:.7rem;min-height:46px}.dob-segments:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px rgba(85,184,171,.18)}.dob-segments input{border:none;padding:.45rem .1rem;border-radius:0;box-shadow:none;background:transparent}.dob-segments input:focus{border:none;box-shadow:none}.dob-segments input:first-of-type,.dob-segments input:nth-of-type(2){width:2.3rem;text-align:center}.dob-segments input:nth-of-type(3){width:3.9rem;text-align:center}.dob-segments span{color:#64748b;font-weight:700}.dob-picker-btn{position:absolute;right:.24rem;top:50%;transform:translateY(-50%);width:44px;height:38px;padding:0;border-radius:8px;display:grid;place-items:center;box-shadow:none;border:1px solid var(--line);background:#fff;color:#0f4f4a;z-index:2}.dob-picker-btn:focus-visible,.dob-picker-btn:hover{transform:translateY(-50%);filter:none;box-shadow:none;border-color:#9ed7ce;background:#f3fffc}.dob-native-picker{position:absolute;right:0;top:0;width:1px;height:1px;opacity:0;pointer-events:none;z-index:-1}.inline-link{color:var(--primary,#0f766e);font-weight:600;text-decoration:none}.inline-link:hover{text-decoration:underline}.confirm-modal-overlay{position:fixed;inset:0;z-index:1200;background:rgba(15,23,42,.54);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:1rem}.confirm-modal-card{width:min(100%,460px);background:#fff;border:1px solid #d1deef;border-radius:16px;box-shadow:0 22px 60px rgba(15,23,42,.28);padding:1rem;display:grid;grid-gap:.75rem;gap:.75rem}.confirm-modal-actions{justify-content:flex-end;flex-wrap:wrap}.confirm-modal-actions button{width:auto;min-width:140px}.greeting-modal-card{position:relative;width:min(100%,520px);overflow:hidden;background:radial-gradient(240px 130px at 110% -10%,rgba(250,204,21,.18),transparent 70%),linear-gradient(160deg,#ffffff,#f5f9ff)}.greeting-modal-close{position:absolute;top:.8rem;right:.8rem;width:38px;height:38px;min-width:38px;padding:0;border-radius:999px;background:rgba(255,255,255,.92);color:#334155;border-color:#d7e2f0;box-shadow:none}.greeting-modal-close:focus-visible,.greeting-modal-close:hover{transform:none;filter:none;background:#ffffff}.greeting-modal-hero{display:grid;grid-template-columns:136px minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:center}.greeting-modal-pill{width:-moz-fit-content;width:fit-content;text-transform:capitalize}.greeting-modal-note{display:grid;grid-gap:.2rem;gap:.2rem;border:1px solid var(--line);border-radius:14px;padding:.85rem .95rem;background:rgba(255,255,255,.85)}.greeting-icon{position:relative;width:136px;height:136px;border-radius:28px;overflow:hidden;border:1px solid rgba(148,163,184,.22)}.greeting-icon-morning{background:linear-gradient(180deg,#d8eeff,#f8fbff 62%,#ffe4a8)}.greeting-icon-afternoon{background:linear-gradient(180deg,#8fd3ff,#d9f0ff 60%,#f4fbff)}.greeting-icon-evening{background:linear-gradient(180deg,#09142b,#122548 62%,#182b4f)}.greeting-moon,.greeting-sun{position:absolute;border-radius:999px}.greeting-sun{width:44px;height:44px;left:46px;top:38px;background:radial-gradient(circle at 35% 35%,#fff4a8,#f59e0b 72%);box-shadow:0 0 24px rgba(245,158,11,.4);animation:greetingFloat 4.8s ease-in-out infinite}.greeting-horizon{left:-6px;right:-6px;bottom:-14px;height:54px;background:linear-gradient(180deg,rgba(245,158,11,.18),#f3cc67 60%,#eab308)}.greeting-cloud,.greeting-horizon{position:absolute;border-radius:999px}.greeting-cloud{background:rgba(255,255,255,.95);box-shadow:16px 6px 0 0 rgba(255,255,255,.95),8px -8px 0 0 rgba(255,255,255,.95);animation:greetingDrift 7s linear infinite}.greeting-cloud-a{width:28px;height:18px;left:18px;top:30px}.greeting-cloud-b{width:32px;height:20px;right:38px;top:78px;animation-duration:8.5s}.greeting-moon{width:42px;height:42px;top:26px;left:44px;background:#f8fafc;box-shadow:inset -10px -2px 0 0 #cbd5e1;animation:greetingFloat 5.4s ease-in-out infinite}.greeting-star{position:absolute;width:5px;height:5px;border-radius:999px;background:#f8fafc;box-shadow:0 0 10px rgba(248,250,252,.68);animation:greetingTwinkle 2.4s ease-in-out infinite}.greeting-star-a{top:24px;right:28px}.greeting-star-b{top:58px;left:28px;animation-delay:.6s}.greeting-star-c{top:92px;right:42px;animation-delay:1.1s}@keyframes greetingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes greetingDrift{0%{transform:translateX(0)}50%{transform:translateX(6px)}to{transform:translateX(0)}}@keyframes greetingTwinkle{0%,to{opacity:.4;transform:scale(.92)}50%{opacity:1;transform:scale(1.18)}}.avatar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.avatar-tile{width:100%;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:12px;padding:.4rem;display:grid;min-height:86px;justify-items:center;align-items:center}.avatar-tile.active{border-color:#4ba89f;box-shadow:0 0 0 3px rgba(75,168,159,.2)}.avatar-svg{width:64px;height:64px;display:grid;place-items:center}.avatar-svg svg{width:64px;height:64px}.dashboard-avatar,.dashboard-avatar svg{width:74px;height:74px}.member-shell{display:grid;grid-template-columns:240px minmax(0,1fr);grid-gap:1rem;align-items:start}.member-sidebar{position:-webkit-sticky;position:sticky;top:.9rem}.member-sidebar-head{display:flex;align-items:center;gap:.6rem;padding-bottom:.8rem;margin-bottom:.7rem;border-bottom:1px solid var(--line)}.member-sidebar-head .dashboard-avatar,.member-sidebar-head .dashboard-avatar svg{width:54px;height:54px}.member-nav-list{display:grid;grid-gap:.4rem;gap:.4rem}.member-nav-item{width:100%;justify-content:flex-start;gap:.45rem;background:#fff;color:#0f172a;border-color:var(--line);box-shadow:none}.member-nav-item.active{background:#0c6f66;color:#fff;border-color:#0c6f66}.member-content{min-width:0;width:100%}.dashboard-overview-grid{grid-template-columns:minmax(380px,1.65fr) minmax(220px,1fr) minmax(220px,1fr);align-items:start;grid-auto-rows:min-content;gap:.8rem}.dashboard-overview-grid>.card{min-width:0;align-self:start}.accounting-top-layout{display:grid;grid-template-columns:minmax(520px,1.8fr) minmax(280px,1fr);grid-gap:.8rem;gap:.8rem;align-items:start;width:100%;min-width:0}.accounting-left-cards,.accounting-side-cards{gap:.8rem}.overview-snapshot-grid{align-items:stretch;gap:.9rem}.overview-snapshot-grid>.card{min-height:156px;display:flex;flex-direction:column;justify-content:space-between}.overview-snapshot-grid .title{margin-bottom:.55rem}.overview-balance-card{overflow:hidden}.accounting-lower-grid{align-items:start;grid-template-columns:minmax(440px,1.35fr) minmax(280px,1fr);width:100%;min-width:0;gap:.8rem}.accounting-lower-single{width:100%}.accounting-entry-card{max-width:100%}.accounting-entry-card,.accounting-recent-card{min-width:0}.expense-recent-list{max-height:390px;overflow:auto;padding-right:.1rem}.accounting-balance-card{gap:.8rem}.accounting-balance-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.accounting-highlight-card{border:1px solid var(--line);border-radius:12px;padding:.55rem .65rem;background:linear-gradient(180deg,#fbfeff,#f4faff);display:grid;grid-gap:.22rem;gap:.22rem}.accounting-highlight-card strong{font-size:1.02rem}.accounting-balance-form{border:1px solid var(--line);border-radius:12px;padding:.7rem;background:#fbfeff}.accounting-balance-form .field{display:grid;grid-gap:.3rem;gap:.3rem}.accounting-balance-form label{font-size:.86rem;color:#3f4e68;font-weight:700}.accounting-metrics-card,.accounting-status-card{display:grid;grid-gap:.65rem;gap:.65rem}.accounting-metrics-grid{display:grid;grid-gap:.25rem;gap:.25rem}.accounting-history-card{gap:.7rem}.accounting-log-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.balance-log-tile{border:1px solid var(--line);border-radius:12px;background:#fbfeff;padding:.55rem .65rem}.balance-log-tile .pill{text-transform:lowercase}.expense-recent-item{border:1px solid var(--line);border-radius:12px;background:#fbfeff;padding:.58rem .65rem;display:grid;grid-gap:.35rem;gap:.35rem}.expense-recent-amount{font-weight:700}.expense-recent-date{font-size:.84rem}.overview-balance-card .dob-segments,.overview-balance-card .dob-wrap,.overview-balance-card .field,.overview-balance-card form{min-width:0;max-width:100%}.overview-balance-card button,.overview-balance-card input,.overview-balance-card select,.overview-balance-card textarea{max-width:100%}.balance-log-list{max-height:240px;overflow:auto;padding-right:.1rem;min-width:0}.balance-log-entry .row{gap:.5rem;min-width:0}.balance-log-entry .row>*{min-width:0}.balance-log-amount,.balance-log-note{overflow-wrap:anywhere;word-break:break-word}.member-chat-fab,.member-mobile-nav{display:none}.admin-top .card:first-child{background:linear-gradient(135deg,#f0fdfa,#eef2ff)}.admin-table{width:100%;border-collapse:collapse;min-width:920px}.admin-table td,.admin-table th{border-bottom:1px solid var(--line);padding:.55rem .45rem;font-size:.92rem}.admin-table thead th{color:#334155;background:#f8fbff;position:-webkit-sticky;position:sticky;top:0}.admin-table tbody tr:hover{background:#f8fffd}.chat-nav-icon,.notification-nav-icon{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:10px;background:#fff}.chat-icon-wrap{position:relative;width:16px;height:16px;display:inline-grid;place-items:center}.chat-alert-dot{position:absolute;top:-4px;right:-5px;width:9px;height:9px;border-radius:999px;background:#ef4444;border:1.5px solid #fff;box-shadow:0 0 0 1px rgba(239,68,68,.2)}.chat-nav-icon.has-alert,.notification-nav-icon.has-alert{border-color:#f2b0b0;background:#fff8f8}.chat-layout{align-items:start}.chat-center-shell{min-width:0}.chat-list{max-height:360px;overflow:auto}.chat-mobile-nav{display:none}.chat-box{border:1px solid var(--line);border-radius:12px;min-height:320px;max-height:420px;overflow:auto;padding:.65rem;display:flex;flex-direction:column;gap:.45rem;background:#fbfeff;align-content:flex-start}.chat-box-messenger{background:linear-gradient(180deg,#f8fcff,#f2f8ff);padding:.8rem}.chat-bubble{max-width:min(90%,540px);padding:.52rem .65rem;border-radius:16px;border:1px solid var(--line);box-shadow:0 4px 10px rgba(15,23,42,.04);height:auto;align-self:flex-start}.chat-bubble.mine{margin-left:auto;background:#d9f7ec;border-color:#79d6b6;border-bottom-right-radius:6px;align-self:flex-end}.chat-bubble.other{margin-right:auto;background:#fff;border-bottom-left-radius:6px}.chat-title-icon{width:1.7rem;height:1.7rem;border-radius:10px;display:inline-grid;place-items:center;border:1px solid var(--line);background:#eef7ff;color:#1e3a8a}.chat-user-row{display:inline-flex;align-items:center;gap:.55rem;justify-content:flex-start}.chat-user-meta{display:grid;grid-gap:.05rem;gap:.05rem;text-align:left}.chat-member-btn{width:100%;display:inline-flex;justify-content:flex-start;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden}.chat-member-btn,.chat-member-btn.secondary{background:#fff;color:var(--text);box-shadow:none}.chat-member-btn.secondary{border-color:var(--line)}.chat-member-btn.secondary:focus-visible,.chat-member-btn.secondary:hover{transform:none;filter:none;background:#f8fbff}.chat-member-btn.active{background:linear-gradient(135deg,#0c6f66,#0a8a7f);border-color:#0b6f66;color:#fff}.chat-member-btn.active .chat-member-username{color:#d9fff7}.chat-member-btn.active .chat-relationship-chip{color:#0f4f4a;background:#e6fffa}.chat-member-username{color:#4f607f;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.chat-member-public{max-height:0;opacity:0;overflow:hidden;font-size:.78rem;color:#5b6b86;display:grid;grid-gap:.14rem;gap:.14rem;transform:translateY(-4px);transition:max-height .28s ease,opacity .22s ease,transform .28s ease,margin-top .28s ease}.chat-member-btn:focus-visible .chat-member-public,.chat-member-btn:hover .chat-member-public{max-height:58px;opacity:1;margin-top:.2rem;transform:translateY(0)}.chat-member-btn.active .chat-member-public{color:#d9fff7}.chat-list-pagination{margin-top:.25rem}.chat-member-time{font-size:.76rem;color:#6b7a93}.chat-member-btn.active .chat-member-time{color:#d9fff7}.chat-member-skeleton{display:flex;align-items:center;gap:.65rem;padding:.5rem;border:1px solid var(--line);border-radius:12px;background:#fff}.chat-member-skeleton-meta{flex:1 1;display:grid;grid-gap:.35rem;gap:.35rem}.family-member-list{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fbfeff;padding:.35rem;display:grid;grid-gap:.3rem;gap:.3rem}.family-member-item{width:100%;background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:none;display:flex;align-items:center;gap:.55rem;padding:.42rem .5rem;border-radius:10px;justify-content:flex-start;overflow:hidden}.family-member-item:focus-visible,.family-member-item:hover{transform:none;filter:none;border-color:#9ed7ce;background:#f4fffc}.family-member-item.active{border-color:#0c6f66;background:#e8fff8}.family-member-meta{display:grid;grid-gap:.05rem;gap:.05rem;text-align:left;min-width:0}.family-member-meta .muted,.family-member-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.family-top-grid{align-items:stretch;grid-template-columns:minmax(420px,1.7fr) minmax(280px,1fr);width:100%;min-width:0;gap:.8rem}.family-top-grid>.card{align-self:stretch;height:100%}.family-connect-card,.family-notify-card{min-width:0}.family-page-layout{width:100%;gap:.8rem}.family-connected-card{min-width:0}.family-connected-grid{align-items:start;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.7rem}.family-connected-item{box-shadow:none;background:#fbfeff;min-height:128px}.family-bottom-grid{align-items:start;grid-template-columns:minmax(420px,1.35fr) minmax(320px,1fr);gap:.8rem}.family-chat-card,.family-group-create-card{min-width:0}.family-chat-head{align-items:flex-start}.family-group-info{border:1px solid var(--line);border-radius:12px;background:#fbfeff;padding:.55rem .65rem;display:grid;grid-gap:.45rem;gap:.45rem}.family-group-member-list{max-height:170px;overflow:auto;display:grid;grid-gap:.35rem;gap:.35rem;padding-right:.1rem}.family-group-member-item{border:1px solid var(--line);border-radius:10px;background:#fff;padding:.35rem .45rem;display:flex;align-items:center;gap:.5rem}.family-chat-message-box{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:.6rem;background:linear-gradient(180deg,#fbfeff,#f3f8ff);display:grid;grid-gap:.45rem;gap:.45rem}.family-chat-message-item{border:1px solid #d6e4f2;border-radius:10px;background:#fff;padding:.45rem .55rem}.family-chat-input-row{align-items:center}.family-group-picker-list{max-height:230px}.family-picker-pagination{gap:.45rem}.family-selected-members{border:1px solid var(--line);border-radius:12px;padding:.55rem .65rem;background:#fbfeff;display:grid;grid-gap:.4rem;gap:.4rem}.family-selected-chip-wrap{display:flex;flex-wrap:wrap;gap:.35rem}.family-selected-chip{width:auto;border-color:#9ed7ce;background:#e8fff8;color:#0f4f4a;cursor:pointer;padding:.18rem .55rem;font-size:.78rem}.profile-edit-shell{gap:.85rem}.profile-section{border:1px solid var(--line);border-radius:12px;background:#fbfeff;padding:.75rem;display:grid;grid-gap:.6rem;gap:.6rem}.profile-married-toggle{width:-moz-fit-content;width:fit-content;border:1px solid var(--line);border-radius:999px;padding:.28rem .55rem;background:#fff}.profile-danger-zone{border-top:1px solid var(--line);padding-top:.85rem}.register-form-shell{gap:.85rem}.register-avatar-preview{border:1px solid var(--line);border-radius:12px;padding:.55rem .65rem;background:#fbfeff;display:grid;justify-items:start;grid-gap:.3rem;gap:.3rem}.register-avatar-preview .dashboard-avatar{width:58px;height:58px}.password-field-wrap{position:relative}.password-field-wrap input{padding-right:2.5rem}.password-toggle-btn{position:absolute;top:50%;right:.55rem;transform:translateY(-50%);border:0;background:transparent;color:var(--text-soft);width:auto;min-width:0;padding:.2rem;display:inline-grid;place-items:center;cursor:pointer}.password-toggle-btn:hover{color:var(--text)}.chat-relationship-chip{display:inline-block;margin-left:.45rem;padding:.1rem .45rem;background:#f8fbff;font-size:.72rem}.chat-relationship-chip,.chat-user-avatar{border-radius:999px;border:1px solid var(--line)}.chat-user-avatar{width:34px;height:34px;overflow:hidden;background:#fff;flex:0 0 auto;display:grid;place-items:center}.chat-user-avatar svg{width:34px;height:34px}.chat-message-row{display:flex;align-items:flex-start;gap:.45rem}.chat-message-row.mine{justify-content:flex-end}.chat-message-content{white-space:pre-wrap;word-break:break-word;line-height:1.36;max-width:100%}.chat-link{color:#1d4ed8;text-decoration:underline;text-underline-offset:2px;word-break:break-all}.chat-bubble.mine .chat-link{color:#0f4f9b}.chat-message-avatar,.chat-message-avatar svg{width:28px;height:28px}.chat-meta{margin-top:.25rem;font-size:.75rem;color:#475569;display:flex;align-items:center;gap:.4rem}.chat-meta.mine{justify-content:flex-end}.chat-meta.other{justify-content:flex-start}.mini-bar{width:100%;height:8px;border-radius:999px;background:#e8f0fb;overflow:hidden}.mini-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0c6f66,#33b5a2)}.report-visual-card .report-header-row{align-items:flex-start;gap:.8rem}.report-export-row{flex-wrap:wrap;justify-content:flex-end}.report-grid{display:grid;grid-template-columns:minmax(320px,1.5fr) minmax(260px,1fr);grid-gap:.8rem;gap:.8rem}.report-chart{min-width:0}.report-month-bars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.45rem;gap:.45rem;align-items:end}.report-month-bar{display:grid;grid-gap:.25rem;gap:.25rem;justify-items:center}.report-month-bar-columns{width:100%;max-width:52px;height:130px;display:grid;grid-template-columns:1fr 1fr;align-items:end;grid-gap:.18rem;gap:.18rem}.report-month-bar-columns span{width:100%;border-radius:8px 8px 4px 4px}.report-month-bar-columns .inflow{background:linear-gradient(180deg,#5dd3bf,#0f766e)}.report-month-bar-columns .expense{background:linear-gradient(180deg,#fca5a5,#dc2626)}.report-month-label{font-size:.78rem;color:#475569;font-weight:700}.report-net{font-size:.76rem;font-weight:700}.report-net.positive{color:#0f766e}.report-net.negative{color:#b91c1c}.report-donut{width:155px;height:155px;margin:0 auto;border-radius:999px;display:grid;place-items:center;position:relative}.report-donut:before{content:"";position:absolute;width:92px;height:92px;border-radius:999px;background:#fff;border:1px solid var(--line)}.report-donut span{position:relative;z-index:1;font-size:.76rem;font-weight:700;color:#0f172a}.report-color-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.chat-status{display:inline-flex;align-items:center;gap:.2rem;font-weight:600}.chat-status.sent{color:#6b7280}.chat-status.delivered{color:#0f766e}.chat-status.seen{color:#2563eb}.timeline-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);grid-gap:.8rem;gap:.8rem;align-items:start}.timeline-weekdays{color:#64748b;font-size:.78rem;text-align:center}.timeline-calendar-grid,.timeline-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:.3rem;gap:.3rem}.timeline-day,.timeline-day-empty{height:34px;border-radius:9px}.timeline-day-empty{border:1px dashed #e2e8f0}.timeline-day{border:1px solid var(--line);background:#fff;color:var(--text);font-weight:700;box-shadow:none;padding:0}.timeline-day.green{background:#e8fff5;border-color:#9de3c4;color:#065f46}.timeline-day.red{background:#fff2f2;border-color:#fecaca;color:#991b1b}.timeline-day.yellow{background:#fffbe6;border-color:#fde68a;color:#92400e}.timeline-day.neutral{background:#f8fbff;border-color:#dbe7f5;color:#334155}.timeline-day.active{box-shadow:0 0 0 3px rgba(12,111,102,.2);border-color:#0c6f66}.brand-logo{display:inline-flex;align-items:center;gap:.34rem;overflow:hidden;border-radius:999px;border:1px solid var(--line);background:linear-gradient(120deg,#effffb,#f4f7ff);padding:.34rem .68rem .34rem .42rem;line-height:1;font-weight:800;color:#0e4e4a;transition:border-color .3s ease,box-shadow .3s ease,background .45s ease}.brand-mark{width:1.4rem;height:1.4rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(140deg,#0c6f66,#0a8a7f);color:#fff;box-shadow:inset 0 1px 1px rgba(255,255,255,.3)}.brand-logo .short{letter-spacing:.01em;opacity:1;max-width:120px;transform:translateX(0) scale(1);transition:max-width .72s cubic-bezier(.22,1,.36,1),opacity .62s ease,transform .72s cubic-bezier(.22,1,.36,1)}.brand-logo .long{max-width:0;opacity:0;margin-left:-.08rem;white-space:nowrap;transform:translateX(-11px);transition:max-width .86s cubic-bezier(.22,1,.36,1),opacity .7s ease,margin-left .6s ease,transform .86s cubic-bezier(.22,1,.36,1)}.brand-logo:focus-visible,.brand-logo:hover{border-color:#9ed7ce;box-shadow:0 0 0 3px rgba(85,184,171,.16);background:linear-gradient(120deg,#e3fff8,#e9f4ff)}.brand-logo:focus-visible .long,.brand-logo:hover .long{max-width:188px;opacity:1;margin-left:.12rem;transform:translateX(0)}.brand-logo:focus-visible .short,.brand-logo:hover .short{max-width:0;opacity:0;transform:translateX(-11px) scale(.98)}.home-logo-mark{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .7rem .35rem .4rem;border-radius:999px;border:1px solid #c6d9ef;background:linear-gradient(120deg,#fbfeff,#f1f7ff);width:-moz-fit-content;width:fit-content;color:#0f3f6e;box-shadow:0 6px 14px rgba(30,64,175,.08)}.home-logo-icon{width:1.65rem;height:1.65rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(140deg,#0c6f66,#0a8a7f);color:#fff}.login-form.is-loading{border-color:#9ed7ce;box-shadow:0 10px 28px rgba(12,111,102,.16)}.login-btn-loading{position:relative;overflow:hidden}.login-btn-loading:after{content:"";position:absolute;inset:auto 0 0 0;height:2px;background:linear-gradient(90deg,rgba(255,255,255,.15),rgba(255,255,255,.95),rgba(255,255,255,.15));animation:loginSweep 1.15s linear infinite}.login-btn-inner{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.login-spinner{width:14px;height:14px;border-radius:999px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .8s linear infinite}.login-progress{height:4px;border-radius:999px;background:linear-gradient(90deg,#c8f2ea,#8ad5c8 50%,#c8f2ea);background-size:180% 100%;animation:progressFlow 1.2s linear infinite}.skeleton-card{position:relative;overflow:hidden}.skeleton-card:before{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,rgba(255,255,255,0),rgba(219,234,254,.52) 48%,rgba(255,255,255,0));animation:skeletonSweep 1.35s ease-in-out infinite}.skeleton-avatar,.skeleton-block,.skeleton-chat-msg,.skeleton-line,.skeleton-line-lg{border-radius:10px;background:#e7eef8}.skeleton-line{height:12px}.skeleton-line-lg{height:34px}.skeleton-avatar{width:52px;height:52px;border-radius:999px}.skeleton-block{height:170px}.skeleton-chat-msg{width:74%;height:44px;border-radius:15px}.skeleton-chat-msg.mine{margin-left:auto;width:64%}@keyframes spin{to{transform:rotate(1turn)}}@keyframes loginSweep{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes progressFlow{0%{background-position:0 0}to{background-position:180% 0}}@keyframes skeletonSweep{to{transform:translateX(100%)}}@media (min-width:901px) and (max-width:1200px){.family-top-grid{grid-template-columns:minmax(340px,1.45fr) minmax(240px,1fr)}.accounting-lower-grid{grid-template-columns:minmax(340px,1.2fr) minmax(240px,1fr)}.accounting-top-layout{grid-template-columns:minmax(360px,1.45fr) minmax(240px,1fr)}.family-top-grid{grid-template-columns:minmax(360px,1.45fr) minmax(250px,1fr)}.family-bottom-grid{grid-template-columns:minmax(340px,1.25fr) minmax(260px,1fr)}}@media (max-width:900px){.container{width:min(1100px,94%)}.accounting-top-layout,.dashboard-overview-grid,.grid-2,.grid-3,.overview-snapshot-grid{grid-template-columns:1fr}.overview-snapshot-grid>.card{min-height:auto}.accounting-balance-highlights,.accounting-log-grid,.accounting-lower-grid,.family-bottom-grid,.family-top-grid{grid-template-columns:1fr}.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-shell{flex-wrap:wrap;gap:.7rem}.top-nav{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));grid-gap:.5rem;gap:.5rem;align-items:center}.top-nav>a,.top-nav>form{min-width:0}.top-nav>a,.top-nav>form>button{width:100%;justify-content:center;padding:.55rem .5rem}.top-nav .chat-nav-icon,.top-nav .notification-nav-icon{justify-content:center;gap:.35rem}.dashboard-head{flex-direction:column;align-items:flex-start;gap:.85rem}.dashboard-balance{text-align:left!important}.control-row{flex-wrap:wrap;align-items:flex-start}.control-row .pill{margin-top:.25rem}.home-cta{flex-wrap:wrap}.home-footer-links{flex-direction:column}.home-cta .action-btn,.home-cta a,.home-cta button{width:100%}.admin-table{min-width:760px}.chat-box{min-height:260px;max-height:340px}.chat-bubble{max-width:100%}.chat-center-shell{padding-bottom:5.1rem}.chat-mobile-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:.65rem;width:min(96%,520px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.2rem;gap:.2rem;background:#0f172a;border-radius:16px;padding:.35rem;border:1px solid #1f2937;z-index:60;box-shadow:0 16px 28px rgba(15,23,42,.35)}.chat-mobile-nav-item{border:0;background:transparent;color:#e2e8f0;box-shadow:none;border-radius:12px;padding:.5rem .4rem;font-size:.78rem;font-weight:700}.chat-mobile-nav-item:focus-visible,.chat-mobile-nav-item:hover{transform:none;filter:none;background:#1f2937}.chat-mobile-nav-item.active{background:#0284c7;color:#fff}.member-shell,.report-grid,.timeline-layout{grid-template-columns:1fr}.member-sidebar{display:none}.member-content{padding-bottom:5.1rem}.member-chat-fab{position:fixed;right:1rem;bottom:5.8rem;width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#0c6f66,#0a8a7f);color:#fff;border:1px solid #0b5f58;box-shadow:0 12px 24px rgba(12,111,102,.35);z-index:61}.member-mobile-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:.65rem;width:min(96%,720px);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.2rem;gap:.2rem;background:#0f172a;border-radius:16px;padding:.35rem;border:1px solid #1f2937;z-index:60;box-shadow:0 16px 28px rgba(15,23,42,.35)}.member-mobile-nav-item{border:0;background:transparent;color:#e2e8f0;box-shadow:none;display:grid;justify-items:center;grid-gap:.1rem;gap:.1rem;padding:.35rem .2rem;border-radius:12px;font-size:.68rem;font-weight:600}.member-mobile-nav-item:focus-visible,.member-mobile-nav-item:hover{transform:none;filter:none;background:#1f2937}.member-mobile-nav-item.active{background:#0284c7;color:#fff}.member-mobile-avatar{width:20px;height:20px;display:grid;place-items:center;overflow:hidden;border-radius:999px;border:1px solid rgba(255,255,255,.65);background:#fff}.member-mobile-avatar svg{width:20px;height:20px}}@media (max-width:560px){.card{padding:.85rem;border-radius:12px}.row{flex-wrap:wrap}.brand-logo{width:100%;justify-content:center}.dob-segments{min-height:44px;padding-left:.55rem;gap:.25rem}.dob-segments input:first-of-type,.dob-segments input:nth-of-type(2){width:2rem}.dob-segments input:nth-of-type(3){width:3.4rem}.avatar-grid{grid-template-columns:1fr 1fr;gap:.45rem}.avatar-svg,.avatar-svg svg{width:56px;height:56px}.admin-table{min-width:680px}.top-nav .chat-nav-icon span,.top-nav .notification-nav-icon span{display:inline}.top-nav{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:.42rem}.header-logout-btn{width:100%}.page-actions{flex-direction:column;align-items:stretch}.action-btn{justify-content:center}.balance-log-list{max-height:220px}.accounting-lower-grid,.accounting-top-layout,.family-top-grid{gap:.65rem}}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:80;border-bottom:1px solid var(--line);background:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-main{padding:1.2rem 0 2rem}.top-nav{gap:.55rem}.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon){color:var(--top-link);background:transparent;border-color:transparent}.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon):focus-visible,.top-nav a:not(.chat-nav-icon):not(.notification-nav-icon):hover{color:var(--top-link-hover);background:color-mix(in srgb,var(--panel) 68%,transparent)}.theme-toggle-btn{width:auto;min-width:84px;border-radius:999px;padding:.45rem .75rem;font-weight:700;border:1px solid var(--line);background:var(--panel);color:var(--text);box-shadow:none}.theme-toggle-btn:focus-visible,.theme-toggle-btn:hover{transform:none;filter:none;border-color:var(--focus)}.brand-logo{border-color:var(--line);background:linear-gradient(120deg,color-mix(in srgb,var(--panel) 85%,transparent),color-mix(in srgb,var(--panel-soft) 85%,transparent));color:var(--text)}.brand-mark{background:linear-gradient(145deg,#151c30,#090e1b);color:#f3cc67}.card{background:var(--panel);border-color:var(--line);border-radius:18px;box-shadow:var(--surface-shadow)}.member-shell{grid-template-columns:220px minmax(0,1fr);gap:1rem}.accounting-highlight-card,.balance-log-tile,.expense-recent-item,.member-content>.card:first-child,.member-sidebar,.overview-snapshot-grid>.card{background:linear-gradient(165deg,color-mix(in srgb,var(--panel) 95%,transparent),color-mix(in srgb,var(--panel-soft) 88%,transparent))}.member-nav-item{border-radius:12px;background:color-mix(in srgb,var(--panel-soft) 90%,transparent);color:var(--text)}.member-nav-item.active{background:linear-gradient(90deg,#f3cc67,#b7902f);border-color:#f3cc67;color:#231603}.chat-mobile-nav,.member-mobile-nav{background:rgba(10,14,24,.95);border-color:rgba(154,173,208,.22)}.chat-nav-icon,.family-chat-message-item,.family-group-info,.family-group-member-item,.notification-nav-icon,.profile-section,button.secondary,input,select,textarea{background:color-mix(in srgb,var(--panel-soft) 92%,transparent);border-color:var(--line);color:var(--text)}button{background:linear-gradient(90deg,#f3cc67,#b7902f);border-color:#c69a37;color:#1f1706;box-shadow:0 8px 20px rgba(191,145,47,.35)}button.secondary{box-shadow:none}.pill{background:var(--brand-soft);color:color-mix(in srgb,var(--text) 75%,#8a6709)}.chat-title-icon,.feature-icon,.title-icon{background:color-mix(in srgb,var(--brand-soft) 70%,var(--panel));color:#d4ad4a;border-color:color-mix(in srgb,var(--line) 75%,#d4ad4a)}.chat-bubble.mine{background:color-mix(in srgb,var(--brand-soft) 55%,var(--panel));border-color:color-mix(in srgb,var(--line) 65%,#e1ba57)}.chat-bubble.other{background:color-mix(in srgb,var(--panel-soft) 90%,transparent)}.mini-bar{background:color-mix(in srgb,var(--line) 55%,transparent)}.mini-bar>span{background:linear-gradient(90deg,#f3cc67,#d19f2e)}html[data-theme=dark] body{background:radial-gradient(980px 420px at 12% -18%,rgba(243,204,103,.16) 0,transparent 62%),radial-gradient(920px 360px at 92% 0,rgba(53,87,165,.22) 0,transparent 64%),var(--bg)}html[data-theme=dark] .chat-link{color:#88c4ff}html[data-theme=dark] .brand-logo:focus-visible,html[data-theme=dark] .brand-logo:hover{background:linear-gradient(120deg,rgba(18,24,38,.9),rgba(24,32,48,.9))}html[data-theme=dark] .chat-mobile-nav-item.active,html[data-theme=dark] .member-mobile-nav-item.active{background:linear-gradient(90deg,#f3cc67,#b7902f);color:#1f1706}html[data-theme=dark] .muted{color:#a6b6cf}html[data-theme=dark] .chat-meta,html[data-theme=dark] .field label,html[data-theme=dark] .report-month-label,html[data-theme=dark] .timeline-weekdays{color:#91a4c3}html[data-theme=dark] .balance-log-tile,html[data-theme=dark] .expense-recent-item,html[data-theme=dark] .family-chat-message-box,html[data-theme=dark] .family-connected-item,html[data-theme=dark] .family-group-info,html[data-theme=dark] .family-member-list,html[data-theme=dark] .family-selected-members,html[data-theme=dark] .profile-section,html[data-theme=dark] .register-avatar-preview{background:rgba(14,20,34,.95);border-color:rgba(136,158,197,.26)}html[data-theme=dark] .avatar-tile,html[data-theme=dark] .chat-member-skeleton,html[data-theme=dark] .chat-user-avatar,html[data-theme=dark] .family-chat-message-item,html[data-theme=dark] .family-group-member-item,html[data-theme=dark] .family-member-item,html[data-theme=dark] .timeline-day,html[data-theme=dark] .timeline-day.neutral{background:rgba(26,34,51,.96);border-color:rgba(136,158,197,.3);color:#eaf0fa}html[data-theme=dark] .family-member-item:focus-visible,html[data-theme=dark] .family-member-item:hover{background:rgba(35,45,66,.98);border-color:rgba(194,165,83,.7)}html[data-theme=dark] .avatar-tile.active,html[data-theme=dark] .family-member-item.active{background:rgba(53,43,16,.9);border-color:#f3cc67;box-shadow:0 0 0 2px rgba(243,204,103,.25)}html[data-theme=dark] .family-selected-chip{background:rgba(53,43,16,.88);color:#f9e6a6;border-color:rgba(243,204,103,.55)}html[data-theme=dark] .dob-picker-btn,html[data-theme=dark] .dob-segments{background:rgba(26,34,51,.96);border-color:rgba(136,158,197,.32);color:#eaf0fa}html[data-theme=dark] .dob-segments span{color:#a6b6cf}html[data-theme=dark] .dob-picker-btn:focus-visible,html[data-theme=dark] .dob-picker-btn:hover{background:rgba(37,48,70,.98);border-color:#f3cc67}html[data-theme=dark] button.secondary,html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{background:rgba(16,23,38,.96);border-color:rgba(136,158,197,.32);color:#eaf0fa}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#8d9fbc}html[data-theme=dark] .password-toggle-btn{color:#9fb2d2}html[data-theme=dark] .password-toggle-btn:hover{color:#d9e5f8}html[data-theme=dark] .timeline-day-empty{border-color:rgba(136,158,197,.28)}html[data-theme=dark] .timeline-day.green{background:rgba(10,67,49,.72);border-color:rgba(95,220,171,.5);color:#bff7df}html[data-theme=dark] .timeline-day.red{background:rgba(93,27,33,.72);border-color:rgba(250,144,150,.48);color:#ffd9db}html[data-theme=dark] .timeline-day.yellow{background:rgba(92,68,14,.72);border-color:rgba(243,204,103,.5);color:#ffe8b2}html[data-theme=dark] .report-donut:before{background:rgba(16,23,38,.96);border-color:rgba(136,158,197,.32)}html[data-theme=dark] .report-donut span{color:#eaf0fa}.theme-toggle-group{display:inline-flex;align-items:center;gap:.28rem;border:1px solid var(--line);border-radius:999px;padding:.2rem;background:color-mix(in srgb,var(--panel) 90%,transparent)}.theme-toggle-icon{width:32px;height:32px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);box-shadow:none;padding:0;display:grid;place-items:center}.theme-toggle-icon:focus-visible,.theme-toggle-icon:hover{transform:none;filter:none;border-color:var(--line);color:var(--text)}.theme-toggle-icon.active{background:linear-gradient(90deg,#f3cc67,#b7902f);border-color:#cfaa4e;color:#211704}html[data-theme=dark] .theme-toggle-group{background:rgba(13,19,30,.86);border-color:rgba(142,160,195,.26)}.chat-ref-shell .chat-ref-topbar{border-radius:18px}.chat-ref-brand{margin-bottom:.12rem;letter-spacing:.01em}.chat-ref-tabs{gap:.38rem}.chat-ref-tab{min-width:86px;border-radius:999px}.chat-ref-layout{grid-template-columns:minmax(320px,1fr) minmax(420px,1.35fr);gap:.75rem}.chat-ref-list-card,.chat-ref-thread-card{min-height:650px}.chat-ref-list-card{gap:.7rem}.chat-ref-icon-btn,.chat-ref-plus-btn{width:32px;height:32px;min-width:32px;border-radius:999px;padding:0;display:inline-grid;place-items:center}.chat-ref-stories{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.1rem}.chat-ref-story{width:74px;min-width:74px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);color:var(--text);box-shadow:none;padding:.4rem .35rem;display:grid;justify-items:center;grid-gap:.26rem;gap:.26rem;font-size:.73rem;font-weight:700}.chat-ref-story .chat-user-avatar,.chat-ref-story .chat-user-avatar svg{width:38px;height:38px}.chat-ref-story.active{border-color:#7fdbe6;box-shadow:0 0 0 2px rgba(127,219,230,.22)}.chat-thread-item{justify-content:space-between;padding-right:.62rem;gap:.5rem}.chat-thread-item .chat-user-meta,.chat-thread-item .chat-user-row{min-width:0}.chat-thread-item .chat-member-username{max-width:100%}.chat-thread-item .chat-member-time{white-space:nowrap}.chat-ref-thread-head{border-bottom:1px solid var(--line);padding-bottom:.52rem}.chat-ref-head-actions{gap:.3rem}.chat-ref-relation-row{border:1px solid var(--line);border-radius:12px;padding:.5rem;background:color-mix(in srgb,var(--panel-soft) 92%,transparent)}.chat-ref-thread-box{min-height:420px;max-height:520px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 95%,transparent),color-mix(in srgb,var(--panel-soft) 95%,transparent))}.chat-ref-input-row{align-items:center;gap:.45rem}.chat-ref-input-row input,.chat-ref-send-btn{border-radius:999px}.chat-ref-send-btn{width:40px;height:40px;min-width:40px;padding:0;display:inline-grid;place-items:center}.chat-ref-input-row .chat-ref-icon-btn{color:var(--muted)}.chat-ref-input-row .chat-ref-icon-btn:focus-visible,.chat-ref-input-row .chat-ref-icon-btn:hover{color:var(--text)}html[data-theme=light] .chat-ref-list-card,html[data-theme=light] .chat-ref-thread-card{background:linear-gradient(165deg,#ffffff,#f8fbff)}html[data-theme=light] .chat-ref-thread-box{border-color:#d5e0f3}html[data-theme=dark] .chat-ref-list-card,html[data-theme=dark] .chat-ref-thread-card,html[data-theme=dark] .chat-ref-topbar{background:linear-gradient(165deg,rgba(10,15,26,.96),rgba(13,21,36,.95));border-color:rgba(132,153,188,.24)}html[data-theme=dark] .chat-ref-tab.secondary{background:rgba(16,23,37,.92);color:#dce6f7;border-color:rgba(132,153,188,.24)}html[data-theme=dark] .chat-ref-tab.active{background:linear-gradient(90deg,#83e6ff,#64bcff);border-color:#7dd7ff;color:#0b2030;box-shadow:0 8px 20px rgba(104,194,255,.32)}html[data-theme=dark] .chat-ref-story{background:rgba(17,26,42,.94);border-color:rgba(132,153,188,.26);color:#dce6f7}html[data-theme=dark] .chat-ref-story.active{border-color:#84e0ff;box-shadow:0 0 0 2px rgba(127,219,230,.32)}html[data-theme=dark] .chat-member-btn.secondary,html[data-theme=dark] .chat-member-skeleton{background:rgba(16,24,38,.95);border-color:rgba(132,153,188,.24);color:#e9f1fd}html[data-theme=dark] .chat-member-btn.active{background:linear-gradient(90deg,#83e6ff,#64bcff);border-color:#7dd7ff;color:#071f2f}html[data-theme=dark] .chat-member-btn.active .chat-member-public,html[data-theme=dark] .chat-member-btn.active .chat-member-time,html[data-theme=dark] .chat-member-btn.active .chat-member-username{color:#10334a}html[data-theme=dark] .chat-member-time,html[data-theme=dark] .chat-member-username{color:#99accd}html[data-theme=dark] .chat-ref-relation-row,html[data-theme=dark] .chat-ref-thread-box{background:rgba(11,18,31,.95);border-color:rgba(132,153,188,.24)}html[data-theme=dark] .chat-bubble.other{background:rgba(19,29,45,.96);border-color:rgba(132,153,188,.24)}html[data-theme=dark] .chat-bubble.mine{background:linear-gradient(90deg,#8fe5ff,#68c4ff);border-color:#7dd7ff;color:#0b2538}html[data-theme=dark] .chat-bubble.mine .chat-link,html[data-theme=dark] .chat-bubble.mine .chat-status{color:#0b2538}html[data-theme=dark] .chat-ref-icon-btn.secondary,html[data-theme=dark] .chat-ref-plus-btn{background:rgba(16,23,37,.92);border-color:rgba(132,153,188,.24);color:#dce6f7}html[data-theme=dark] .chat-ref-send-btn{background:linear-gradient(90deg,#83e6ff,#64bcff);border-color:#7dd7ff;color:#0a1f2f;box-shadow:0 8px 20px rgba(101,191,255,.34)}html[data-theme=dark] .chat-ref-input-row input{background:rgba(16,24,38,.94);border-color:rgba(132,153,188,.24);color:#e9f1fd}html[data-theme=dark] .chat-ref-input-row input::placeholder{color:#8fa3c2}@media (max-width:900px){.chat-ref-layout{grid-template-columns:1fr}.chat-ref-list-card,.chat-ref-thread-card{min-height:auto}}html[data-theme=dark] .hero-card{background:linear-gradient(145deg,rgba(10,15,26,.96),rgba(13,21,36,.95));border-color:rgba(132,153,188,.24)}html[data-theme=dark] .hero-art .sculpture-loader,html[data-theme=dark] .hero-stat{background:rgba(16,24,38,.95);border-color:rgba(132,153,188,.24);color:#eaf0fa}html[data-theme=dark] .hero-stat strong{color:#f1f6ff}html[data-theme=dark] .hero-stat span{color:#9fb2cf}html[data-theme=dark] .home-logo-mark{background:linear-gradient(120deg,rgba(17,26,42,.96),rgba(22,33,50,.95));border-color:rgba(132,153,188,.24);color:#e6efff;box-shadow:0 10px 24px rgba(0,0,0,.28)}html[data-theme=dark] .home-logo-icon{background:linear-gradient(140deg,#83e6ff,#64bcff);color:#0a1f2f}html[data-theme=dark] .feature-card,html[data-theme=dark] .home-footer{background:linear-gradient(165deg,rgba(10,15,26,.96),rgba(13,21,36,.95));border-color:rgba(132,153,188,.24)}html[data-theme=dark] .home-footer-link{background:rgba(16,24,38,.94);border-color:rgba(132,153,188,.24)}html[data-theme=dark] .home-footer-link.linkedin{color:#80bfff}html[data-theme=dark] .home-footer-link.github{color:#dce6f7}html[data-theme=dark] .action-btn{background:linear-gradient(90deg,#83e6ff,#64bcff);border-color:#7dd7ff;color:#092233;box-shadow:0 10px 24px rgba(101,191,255,.35)}html[data-theme=dark] .action-btn:hover{border-color:#95e3ff;box-shadow:0 13px 28px rgba(101,191,255,.42)}html[data-theme=dark] .action-btn.secondary{background:rgba(16,24,38,.94);color:#e8f0ff;border-color:rgba(132,153,188,.3);box-shadow:none}.overview-flow{gap:.8rem}.overview-flow-income{gap:.7rem;background:linear-gradient(165deg,color-mix(in srgb,var(--panel) 96%,transparent),color-mix(in srgb,var(--panel-soft) 92%,transparent))}.overview-flow-total{margin:0;font-size:clamp(1.85rem,3.1vw,2.45rem);font-weight:800;letter-spacing:.01em}.overview-flow-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.45rem;gap:.45rem}.overview-flow-metrics>div{border:1px solid var(--line);border-radius:12px;padding:.5rem .6rem;background:color-mix(in srgb,var(--panel-soft) 94%,transparent);display:grid;grid-gap:.16rem;gap:.16rem}.overview-flow-metrics strong{font-size:1.02rem}.overview-flow-bottom{gap:.8rem}.overview-flow-budget,.overview-flow-categories,.overview-flow-status{gap:.65rem}.overview-flow-progress{width:100%;height:8px;border-radius:999px;background:color-mix(in srgb,var(--line) 62%,transparent);overflow:hidden}.overview-flow-progress>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff7ad6,#bb72ff)}.overview-flow-category-item{border:1px solid var(--line);border-radius:12px;padding:.5rem .62rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:color-mix(in srgb,var(--panel-soft) 94%,transparent)}html[data-theme=dark] .overview-flow-budget,html[data-theme=dark] .overview-flow-categories,html[data-theme=dark] .overview-flow-income,html[data-theme=dark] .overview-flow-status{background:linear-gradient(165deg,rgba(10,15,26,.96),rgba(13,21,36,.95));border-color:rgba(132,153,188,.24)}html[data-theme=dark] .overview-flow-category-item,html[data-theme=dark] .overview-flow-metrics>div{background:rgba(16,24,38,.95);border-color:rgba(132,153,188,.24)}html[data-theme=dark] .overview-flow-progress{background:rgba(132,153,188,.24)}html[data-theme=dark] .overview-flow-progress>span{background:linear-gradient(90deg,#ff8edf,#84e0ff)}@media (max-width:900px){.overview-flow-metrics{grid-template-columns:1fr}.member-shell{grid-template-columns:minmax(0,1fr);gap:.75rem}.member-content{width:100%;min-width:0}.member-content>.card,.member-content>.overview-flow,.member-content>.overview-flow .card{width:100%;max-width:100%}.dashboard-head,.overview-flow-budget,.overview-flow-categories,.overview-flow-income,.overview-flow-status{padding:.9rem}}@media (max-width:560px){.container{width:min(1100px,96%)}.greeting-modal-hero{grid-template-columns:1fr;justify-items:center;text-align:center}.greeting-modal-note{text-align:center}.member-content{gap:.65rem}.dashboard-head{border-radius:14px}.overview-flow-total{font-size:clamp(1.55rem,8vw,1.95rem)}}.chat-presence-dot{display:inline-block;width:8px;height:8px;border-radius:999px;margin-left:.4rem;vertical-align:middle}.chat-presence-dot.online{background:#22c55e;box-shadow:0 0 0 2px rgba(34,197,94,.18)}.chat-presence-dot.offline{background:#94a3b8}.chat-presence-text.online{color:#16a34a}.chat-presence-text.offline{color:#64748b}html[data-theme=dark] .chat-presence-dot.online{background:#34d399;box-shadow:0 0 0 2px rgba(52,211,153,.2)}html[data-theme=dark] .chat-presence-dot.offline{background:#7f8faa}html[data-theme=dark] .chat-presence-text.online{color:#86efac}html[data-theme=dark] .chat-presence-text.offline{color:#94a3b8}body[data-stealth-chat=true]{background:#0d1117}body[data-stealth-chat=true] .app-header{display:none}body[data-stealth-chat=true] .app-main{width:100%;max-width:none;margin:0;padding:0}.stealth-chat-shell{height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr);background:#0d1117;color:#c9d1d9;font-family:Consolas,Cascadia Code,Fira Code,monospace}.stealth-sidebar{min-height:0;border-right:1px solid #21262d;background:#161b22;padding:1rem .85rem;display:grid;align-content:start;grid-gap:1rem;gap:1rem;overflow:auto}.stealth-brand,.stealth-user-card{display:flex;align-items:center;gap:.7rem}.stealth-brand strong,.stealth-user-card strong{display:block;color:#e6edf3;font-size:.94rem}.stealth-brand span,.stealth-user-card span{display:block;color:#7d8590;font-size:.76rem}.stealth-brand-dot{width:.7rem;height:.7rem;border-radius:999px;background:#3fb950;box-shadow:0 0 0 6px rgba(63,185,80,.12)}.stealth-sidebar-section{display:grid;grid-gap:.45rem;gap:.45rem}.stealth-sidebar-footer{margin-top:auto}.stealth-section-label{margin:0;text-transform:uppercase;letter-spacing:.08em;color:#7d8590;font-size:.7rem}.stealth-room-list{display:grid;grid-gap:.3rem;gap:.3rem;max-height:44vh;overflow:auto}.stealth-room-btn{width:100%;justify-content:flex-start;border-radius:8px;border:1px solid transparent;background:transparent;color:#9da7b3;box-shadow:none;padding:.55rem .65rem;font-family:inherit;font-size:.86rem}.stealth-room-btn:focus-visible,.stealth-room-btn:hover{transform:none;filter:none;background:#1f2937;color:#e6edf3}.stealth-room-btn.active{background:#1f6feb;color:#f0f6fc}.stealth-presence{display:inline-block;width:8px;height:8px;margin-right:.45rem;border-radius:999px}.stealth-presence.online{background:#3fb950}.stealth-presence.offline{background:#6e7681}.stealth-user-avatar,.stealth-user-avatar svg{width:38px;height:38px}.stealth-main{min-width:0;min-height:0;padding:1rem;display:grid;grid-gap:.75rem;gap:.75rem;overflow:hidden}.stealth-terminal-bar{border:1px solid #21262d;border-radius:10px;background:#161b22;color:#8b949e;padding:.7rem .9rem;display:flex;align-items:center;gap:.8rem;font-size:.84rem}.stealth-traffic{display:inline-flex;gap:.35rem}.stealth-traffic i{width:10px;height:10px;border-radius:999px;display:inline-block}.stealth-traffic i:first-child{background:#ff5f56}.stealth-traffic i:nth-child(2){background:#ffbd2e}.stealth-traffic i:nth-child(3){background:#27c93f}.stealth-terminal{min-height:0;height:100%;border:1px solid #30363d;border-radius:14px;background:linear-gradient(180deg,rgba(1,4,9,.88),rgba(13,17,23,.98)),repeating-linear-gradient(0deg,rgba(255,255,255,.025),rgba(255,255,255,.025) 1px,transparent 0,transparent 28px);padding:1rem;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;grid-gap:.8rem;gap:.8rem;box-shadow:inset 0 1px 0 rgba(240,246,252,.03);overflow:hidden}.stealth-terminal-meta{display:flex;justify-content:space-between;gap:.8rem;color:#7d8590;font-size:.78rem}.stealth-log{min-height:0;overflow:auto;padding-right:.25rem;display:grid;align-content:start;grid-gap:.75rem;gap:.75rem}.stealth-line{display:grid;grid-gap:.22rem;gap:.22rem}.stealth-prefix{color:#58a6ff;font-size:.78rem}.stealth-line.mine .stealth-prefix{color:#7ee787}.stealth-message{color:#e6edf3;line-height:1.6;word-break:break-word}.stealth-status{margin-left:.7rem;color:#8b949e;font-size:.74rem;text-transform:lowercase}.stealth-controls{display:flex;align-items:end;gap:.65rem;position:-webkit-sticky;position:sticky;bottom:4.5rem;z-index:2;padding-top:.35rem;background:linear-gradient(180deg,rgba(1,4,9,0),rgba(13,17,23,.96) 24%,rgba(13,17,23,.99))}.stealth-controls .field{min-width:min(280px,100%)}.stealth-controls label{color:#8b949e;font-size:.78rem}.stealth-form{display:grid;grid-template-columns:auto minmax(0,1fr) 86px;grid-gap:.6rem;gap:.6rem;align-items:center;position:-webkit-sticky;position:sticky;bottom:0;z-index:3;padding-top:.5rem;background:linear-gradient(180deg,rgba(1,4,9,0),rgba(13,17,23,.94) 22%,rgba(13,17,23,1))}.stealth-prompt{color:#7ee787;font-size:.82rem;white-space:nowrap}.stealth-controls button.secondary,.stealth-controls select,.stealth-form button,.stealth-form input{border-radius:8px;background:#0d1117;border-color:#30363d;color:#c9d1d9;font-family:inherit;box-shadow:none}.stealth-controls button.secondary,.stealth-form button{background:#21262d;color:#e6edf3}.stealth-controls button.secondary:focus-visible,.stealth-controls button.secondary:hover,.stealth-form button:focus-visible,.stealth-form button:hover{transform:none;filter:none;background:#30363d}.stealth-terminal .chat-link{color:#79c0ff}@media (max-width:900px){.stealth-chat-shell{height:auto;min-height:100vh;grid-template-columns:1fr}.stealth-sidebar{border-right:0;border-bottom:1px solid #21262d}.stealth-terminal{height:auto}.stealth-form{grid-template-columns:1fr}.stealth-prompt{white-space:normal}.stealth-controls{flex-direction:column;align-items:stretch}.stealth-controls .field{min-width:0}}