.login-page{background:#f5f5f5;min-height:100vh;padding:0}.login-wrapper{min-height:100vh;display:flex}.login-sidebar{color:#fff;background:#00266b;flex:1;justify-content:center;align-items:center;padding:3rem;display:flex;position:relative}.brand-info{text-align:left;z-index:1;max-width:360px;position:relative}.brand-info h2{color:#fff;letter-spacing:-.02em;margin-bottom:1.25rem;font-size:2rem;font-weight:500}.brand-info p{opacity:.85;margin-bottom:3rem;font-size:1rem;line-height:1.5}.security-features{flex-direction:column;gap:1.25rem;margin-top:2rem;display:flex}.feature-item{align-items:center;gap:.875rem;font-size:.9rem;font-weight:400;display:flex}.feature-icon{opacity:.9;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.feature-icon svg{width:100%;height:100%}.login-main{background:#fff;flex-direction:column;flex:1.2;justify-content:center;padding:3rem;display:flex}.login-tabs{background:#f5f5f5;border-radius:4px;width:100%;max-width:400px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;padding:.25rem;display:flex}.tab-button{color:#666;cursor:pointer;background:0 0;border:none;border-radius:2px;flex:1;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .2s}.tab-button.active{color:#00266b;background:#fff;box-shadow:0 1px 3px #0000001a}.tab-button:hover:not(.active){color:#333}.login-container{width:100%;max-width:400px;box-shadow:none;background:#fff;border-radius:0;margin:0 auto;padding:0}.login-header{text-align:center;margin-bottom:2.5rem}.login-header h1{color:#1a1a1a;margin-bottom:.5rem;font-size:1.5rem;font-weight:500}.login-header p{color:#666;margin:0;font-size:.9rem}.login-form{margin-bottom:2rem}.form-group{margin-bottom:1.25rem}.form-group label{color:#1a1a1a;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:block}.form-input{background-color:#fff;border:1px solid #d0d0d0;border-radius:4px;width:100%;padding:.875rem 1rem;font-size:.95rem;transition:border-color .2s}.form-input:hover{border-color:#999}.form-options{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.checkbox-label{cursor:pointer;color:#444;align-items:center;font-size:.85rem;display:flex;position:relative}.checkbox-label input[type=checkbox]{opacity:0;cursor:pointer;position:absolute}.checkbox-label .checkmark{border:1px solid #999;border-radius:2px;width:16px;height:16px;margin-right:.5rem;transition:all .2s;position:relative}.checkbox-label input[type=checkbox]:checked+.checkmark{background-color:#00266b;border-color:#00266b}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"";border:1.5px solid #fff;border-width:0 1.5px 1.5px 0;width:5px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.forgot-password{color:#00266b;font-size:.85rem;font-weight:500;text-decoration:none}.forgot-password:hover{text-decoration:underline}.login-footer{border-top:1px solid #e0e0e0;padding-top:2rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.footer-links a{color:#666;font-size:.8rem;font-weight:400;text-decoration:none}.footer-links a:hover{color:#1a1a1a;text-decoration:underline}.button--fullWidth{justify-content:center;width:100%}@media screen and (width<=1024px){.login-wrapper{flex-direction:column}.login-sidebar{flex:none;min-height:180px;padding:2rem 1.5rem}.brand-info{text-align:center;max-width:none}.brand-info h2{margin-bottom:.75rem;font-size:1.75rem}.brand-info p{margin-bottom:1.5rem}.security-features{display:none}.login-main{padding:2rem 1.5rem}}@media screen and (width<=768px){.login-main{padding:2rem 1rem}.footer-links{text-align:center;flex-direction:column;gap:.75rem}.login-tabs{margin-bottom:2rem}}@media screen and (width<=480px){.login-container{padding:0}.login-header h1{font-size:1.35rem}.brand-info h2{font-size:1.5rem}.login-tabs{margin-bottom:1.5rem}.tab-button{padding:.625rem .75rem;font-size:.8rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.dashboard-page{background:#f5f5f5;min-height:100vh;padding:0}.dashboard-wrapper{min-height:100vh;display:flex}.dashboard-sidebar{color:#fff;z-index:100;background:#00266b;flex-direction:column;width:260px;height:100vh;padding:2rem 1.5rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-brand,.dashboard-nav--mobile{display:none}.user-profile{z-index:1;margin-bottom:2.5rem;position:relative}.user-avatar{background:#ffffff26;border-radius:4px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;font-size:1.25rem;font-weight:500;display:flex}.user-profile h2{letter-spacing:-.01em;margin-bottom:.25rem;font-size:1.1rem;font-weight:500}.user-profile p{opacity:.7;font-size:.8rem;font-weight:400}.dashboard-nav{z-index:1;flex-direction:column;flex:1;gap:.25rem;display:flex;position:relative}.nav-item{color:#ffffffbf;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:.75rem;padding:.75rem .875rem;font-size:.9rem;transition:all .15s;display:flex}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item.active{color:#fff;background:#ffffff1f;font-weight:500}.nav-icon{justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-icon svg{width:100%;height:100%}.logout-section{z-index:1;margin-top:auto;position:relative}.logout-btn{color:#ffffffbf;cursor:pointer;text-align:left;background:#ffffff14;border:none;border-radius:4px;align-items:center;gap:.75rem;width:100%;padding:.75rem .875rem;font-size:.9rem;transition:all .15s;display:flex}.logout-btn:hover{color:#fff;background:#ffffff1f}.dashboard-main{flex:1;min-height:100vh;margin-left:260px;padding:2rem;overflow-y:auto}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{color:#1a1a1a;letter-spacing:-.01em;margin-bottom:.375rem;font-size:1.75rem;font-weight:500}.dashboard-header p{color:#666;font-size:.95rem}.balance-card{color:#fff;background:#00266b;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1.75rem 2rem;display:flex}.balance-info h2{opacity:.8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem;font-weight:500}.balance-amount{letter-spacing:-.02em;font-size:2rem;font-weight:500}.balance-trend{text-align:right}.trend-positive,.trend-negative{color:#ffffffe6;font-size:1.1rem;font-weight:500;display:block}.balance-trend span:last-child{opacity:.7;margin-top:.25rem;font-size:.8rem;display:block}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;align-items:center;gap:.875rem;padding:1.25rem 1.5rem;display:flex}.stat-card:hover{border-color:#ccc}.stat-icon{justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-icon svg{width:100%;height:100%}.stat-card.income .stat-icon{color:#2e7d32}.stat-card.outcome .stat-icon{color:#c41e3a}.stat-info h3{color:#666;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem;font-size:.75rem;font-weight:500}.stat-amount{color:#1a1a1a;font-size:1.35rem;font-weight:500}.stat-card.outcome .stat-amount{color:#1a1a1a}.recent-transactions{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:1.5rem}.recent-transactions h3{color:#1a1a1a;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.25rem;font-size:.85rem;font-weight:500}.transaction-list{flex-direction:column;display:flex}.transaction-item{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:.875rem 0;display:flex}.transaction-item:last-child{border-bottom:none}.transaction-info{flex:1}.transaction-description{color:#1a1a1a;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.95rem;font-weight:500;display:flex}.transaction-pending-badge{color:#b45309;letter-spacing:.02em;background:#fff8e1;border:1px solid #fcd34d;border-radius:999px;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.transaction-date{color:#888;font-size:.8rem}.transaction-amount{font-size:1rem;font-weight:500}.transaction-amount.income{color:#2e7d32}.transaction-amount.outcome{color:#c41e3a}.transactions-table{background:#fff;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.table-header{color:#666;text-transform:uppercase;letter-spacing:.04em;background:#fafafa;border-bottom:1px solid #e0e0e0;grid-template-columns:1fr 2fr 1fr 1fr 1fr;padding:.875rem 1.5rem;font-size:.75rem;font-weight:500;display:grid}.table-body{max-height:480px;overflow-y:auto}.table-row{border-bottom:1px solid #f0f0f0;grid-template-columns:1fr 2fr 1fr 1fr 1fr;padding:.875rem 1.5rem;transition:background-color .15s;display:grid}.table-row:hover{background:#fafafa}.table-row:last-child{border-bottom:none}.table-date{color:#888;font-size:.85rem}.table-description{color:#1a1a1a;font-size:.9rem;font-weight:500}.table-category{color:#888;font-size:.85rem}.table-amount{text-align:right;font-size:.95rem;font-weight:500}.table-amount.income{color:#2e7d32}.table-amount.outcome{color:#c41e3a}.table-status{justify-content:flex-end;align-items:center;font-size:.8rem;display:flex}.status-badge{letter-spacing:.02em;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.status-badge--pending{color:#b45309;background:#fff8e1;border:1px solid #fcd34d}.status-badge--completed{color:#15803d;background:#f0fdf4;border:1px solid #86efac}.form-error{color:#c41e3a;background:#fdf2f2;border-left:3px solid #c41e3a;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}.form-success{color:#2e7d32;background:#f0f7f0;border-left:3px solid #2e7d32;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}.settings-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;min-width:0;margin-bottom:1.5rem;padding:1.5rem;overflow:hidden}.settings-card h3{color:#1a1a1a;text-transform:uppercase;letter-spacing:.05em;word-break:break-word;overflow-wrap:anywhere;margin-bottom:1.25rem;font-size:.85rem;font-weight:500}.password-form{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.form-group{flex-direction:column;gap:.375rem;display:flex}.form-group label{color:#1a1a1a;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:500}.form-input{border:1px solid #d0d0d0;border-radius:4px;width:100%;min-width:0;padding:.875rem 1rem;font-size:.95rem;transition:border-color .2s}.form-input:focus{border-color:#00266b;outline:none}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;display:grid}.info-item{flex-direction:column;gap:.375rem;display:flex}.info-item label{color:#888;text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:500}.info-item span{color:#1a1a1a;font-size:1rem;font-weight:500}.button--green{color:#fff;cursor:pointer;background-color:#00a651;border:none;border-radius:4px;padding:.875rem 1.5rem;font-size:.9rem;font-weight:500;transition:background-color .2s}.button--green:hover{background-color:#008a44}.button--green:active{background-color:#007a3d}.button--green:disabled{cursor:not-allowed;background-color:#ccc}.admin-tx-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:1.5rem;overflow:hidden}.admin-tx-card-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.admin-tx-card-header h3{color:#1a1a1a;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.85rem;font-weight:500}.admin-tx-count{color:#666;letter-spacing:.01em;background:#f5f5f5;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-tx-empty{color:#aaa;text-align:center;padding:2.5rem 0;font-size:.95rem;font-style:italic}.admin-tx-table{width:100%;overflow-x:hidden}.admin-tx-head{text-transform:uppercase;letter-spacing:.04em;color:#888;background:#fafafa;border-bottom:1px solid #e0e0e0;grid-template-columns:110px 130px 1fr 120px 110px 44px;padding:.625rem 1.5rem;font-size:.7rem;font-weight:500;display:grid}.admin-tx-body{max-height:420px;overflow-y:auto}.admin-tx-row{border-bottom:1px solid #f0f0f0;grid-template-columns:110px 130px 1fr 120px 110px 44px;align-items:center;padding:.75rem 1.5rem;transition:background .12s;display:grid}.admin-tx-row:last-child{border-bottom:none}.admin-tx-row:nth-child(2n){background:#fafafa}.admin-tx-row:hover{background:#f5f5f5}.admin-tx-cell--date{color:#888;font-size:.85rem}.admin-tx-type-badge{letter-spacing:.01em;border-radius:4px;align-items:center;padding:.2rem .5rem;font-size:.7rem;font-weight:500;display:inline-flex}.admin-tx-type-badge.deposit{color:#2e7d32;background:#f0f7f0}.admin-tx-type-badge.withdrawal{color:#c41e3a;background:#fdf2f2}.admin-tx-cell--desc{color:#444;white-space:nowrap;text-overflow:ellipsis;padding-right:1rem;font-size:.9rem;overflow:hidden}.admin-tx-nodesc{color:#bbb}.admin-tx-cell--amount{text-align:right;font-size:.9rem;font-weight:500}.admin-tx-cell--amount.income{color:#2e7d32}.admin-tx-cell--amount.outcome{color:#c41e3a}.admin-tx-cell--action{justify-content:center;align-items:center;display:flex}@media screen and (width<=1024px){.dashboard-wrapper{flex-direction:column}.dashboard-sidebar{z-index:200;flex-direction:row;justify-content:space-between;align-items:center;width:100%;height:52px;min-height:auto;padding:0 1.25rem;position:fixed;top:0;left:0;right:0;overflow:visible}.user-profile,.dashboard-nav{display:none}.sidebar-brand{color:#fff;letter-spacing:.03em;z-index:1;font-size:1.05rem;font-weight:700;display:block;position:relative}.logout-section{margin-top:0}.logout-btn{z-index:1;border-radius:6px;width:auto;padding:.4rem .9rem;font-size:.82rem;position:relative}.dashboard-main{min-height:calc(100vh - 116px);margin-top:52px;margin-bottom:64px;margin-left:0;padding:1rem;overflow-x:hidden}.dashboard-nav--mobile{z-index:200;background:linear-gradient(135deg,#00266b 0%,#003d99 100%);border-top:1px solid #ffffff26;height:64px;display:flex;position:fixed;bottom:0;left:0;right:0}.dashboard-nav--mobile .nav-item{border:none;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;padding:.4rem .2rem;font-size:.65rem;display:flex}.dashboard-nav--mobile .nav-icon{width:auto;font-size:1.25rem}.admin-tx-head{display:none}.admin-tx-body{max-height:none}.admin-tx-row{border-bottom:1px solid #f0f0f0;flex-direction:column;gap:.4rem;padding:.85rem 1.25rem;display:flex}.admin-tx-row:nth-child(2n){background:#fafbff}.admin-tx-cell--date{color:#aaa;font-size:.78rem}.admin-tx-cell--desc{white-space:normal;text-overflow:unset;padding-right:0;font-size:.85rem;overflow:visible}.admin-tx-cell--amount{text-align:left;font-size:1rem}.admin-tx-cell--action{justify-content:flex-start}}@media screen and (width<=768px){.dashboard-main{padding:.75rem}.dashboard-header h1{font-size:1.35rem}.dashboard-header p{font-size:.9rem}.balance-card{text-align:center;flex-direction:column;gap:1rem;padding:1.5rem}.balance-amount{font-size:1.75rem}.balance-trend{text-align:center}.stats-grid{grid-template-columns:1fr;gap:.75rem}.stat-card{padding:1rem 1.25rem}.table-header,.table-row{grid-template-columns:1fr;gap:.5rem}.table-header>div:not(:first-child),.table-row>div:not(:first-child){display:none}.info-grid{grid-template-columns:1fr;gap:1rem}.settings-card,.recent-transactions{padding:1.25rem}}@media screen and (width<=480px){.dashboard-main{padding:.5rem}.balance-card{padding:1.25rem}.balance-amount{font-size:1.5rem}.settings-card,.recent-transactions{padding:1rem}.button--green{width:100%}}.nav-item--admin{color:#ffffffb3;border-top:1px solid #ffffff1a;margin-top:.5rem;padding-top:.75rem}.nav-item--admin.active,.nav-item--admin:hover{color:#fff;background:#ffffff14}.admin-content{padding:0}.admin-user-list{margin-bottom:1.5rem}.admin-user-list__label{text-transform:uppercase;letter-spacing:.05em;color:#888;margin-bottom:.5rem;font-size:.7rem;font-weight:500}.admin-user-list__scroll{flex-wrap:wrap;gap:.5rem;display:flex}.admin-user-chip{cursor:pointer;text-align:left;background:#fff;border:1px solid #d0d0d0;border-radius:4px;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0;padding:.5rem .75rem;transition:border-color .15s,background .15s;display:flex}.admin-user-chip:hover{background:#f5f5f5;border-color:#999}.admin-user-chip.selected{background:#f0f4f9;border-color:#00266b}.admin-user-chip__name{color:#1a1a1a;align-items:center;gap:.4rem;font-size:.9rem;font-weight:500;display:flex}.admin-user-chip__meta{color:#888;font-size:.78rem}.admin-user-chip--add{color:#555;border-style:dashed;flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem}.admin-badge{text-transform:uppercase;color:#666;letter-spacing:.03em;background:#f0f0f0;border-radius:2px;padding:.1rem .35rem;font-size:.6rem;font-weight:500}.admin-detail{width:100%;min-width:0}.admin-placeholder{color:#999;text-align:center;padding:3rem 0;font-style:italic}.admin-delete-btn{color:#d32f2f;cursor:pointer;background:0 0;border:1px solid #e0e0e0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;transition:background .15s,border-color .15s;display:flex}.admin-delete-btn:hover{background:#fdecea;border-color:#d32f2f}.admin-not-implemented{text-transform:uppercase;letter-spacing:.05em;color:#666;background:#eef0f2;border:1px solid #d0d3d8;border-radius:4px;margin-left:auto;padding:.1rem .45rem;font-size:.7rem;font-weight:700}.withdraw-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff6;border-radius:4px;margin-top:1rem;padding:.5rem 1.25rem;font-size:.85rem;font-weight:500;transition:background .15s,border-color .15s}.withdraw-btn:hover{background:#fff3;border-color:#fff9}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-box{background:#fff;border-radius:4px;width:100%;max-width:480px;max-height:90vh;padding:2rem;position:relative;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-close{cursor:pointer;color:#666;background:0 0;border:1px solid #e0e0e0;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;transition:background .15s,border-color .15s;display:flex;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:#333;background:#f5f5f5;border-color:#ccc}.modal-title{color:#1a1a1a;margin-bottom:.25rem;font-size:1.25rem;font-weight:500}.modal-subtitle{color:#888;margin-bottom:1.5rem;font-size:.85rem}.form-row{align-items:flex-start;gap:1rem;display:flex}.form-group--grow{flex:1}.label-optional{color:#aaa;font-size:.82rem;font-weight:400}.withdraw-success-screen{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:1rem 0 .5rem;display:flex}.withdraw-success-icon{color:#2e7d32;background:#f0f7f0;border-radius:4px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.withdraw-success-screen h2{color:#1a1a1a;font-size:1.15rem;font-weight:500}.withdraw-success-screen p{color:#555;max-width:320px;font-size:.9rem;line-height:1.5}
