body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#26a69a,#ff7961);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.login-content{align-items:center;display:flex;gap:60px;max-width:1100px;width:100%}.login-logo{animation:fadeIn .8s ease-in;filter:drop-shadow(0 20px 40px rgba(0,0,0,.3));flex-shrink:0;height:400px;width:400px}.login-box{animation:slideIn .8s ease-out;background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:50px 45px;width:100%}.login-title{color:#333;font-size:32px;font-weight:700;margin:0 0 10px;text-align:center}.login-subtitle{color:#666;font-size:15px;margin:0 0 35px;text-align:center}.google-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:12px;color:#333;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:16px;transition:all .3s;width:100%}.google-btn:hover{background:#f8f9fa;border-color:#26a69a;box-shadow:0 4px 12px #26a69a33;transform:translateY(-2px)}.google-icon{font-size:22px}.divider{align-items:center;color:#999;display:flex;font-size:14px;font-weight:500;margin:30px 0}.divider:after,.divider:before{background:#e0e0e0;content:"";flex:1 1;height:1px}.divider span{padding:0 20px}.login-form{display:flex;flex-direction:column;gap:18px}.input-group{position:relative}.input-group input{border:2px solid #e0e0e0;border-radius:12px;box-sizing:border-box;font-size:15px;padding:16px 18px;transition:all .3s;width:100%}.input-group input:focus{border-color:#26a69a;box-shadow:0 0 0 3px #26a69a1a;outline:none}.input-group input::placeholder{color:#999}.error-message{border-radius:10px;margin:5px 0 0;padding:12px;text-align:center}.submit-btn{background:linear-gradient(135deg,#26a69a,#ff7961);border:none;border-radius:12px;box-shadow:0 4px 12px #26a69a4d;color:#fff;cursor:pointer;font-size:17px;font-weight:700;margin-top:10px;padding:16px;transition:all .3s;width:100%}.submit-btn:hover{box-shadow:0 6px 20px #26a69a66;transform:translateY(-2px)}.toggle-text{color:#666;font-size:15px;margin-top:30px;text-align:center}.toggle-btn{background:none;border:none;color:#26a69a;cursor:pointer;font-size:15px;font-weight:600;margin-left:5px;transition:color .3s}.toggle-btn:hover{color:#ff7961;text-decoration:underline}@keyframes slideIn{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@media (max-width:1024px){.login-content{flex-direction:column;gap:40px}.login-logo{height:300px;width:300px}.login-box{max-width:500px}}@media (max-width:480px){.login-box{padding:40px 30px}.login-logo{height:200px;width:200px}}.profile-choice-container{align-items:center;background:linear-gradient(135deg,#26a69a,#ff7961);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.profile-content{max-width:1000px;text-align:center;width:100%}.profile-content h1{color:#fff;font-size:42px;font-weight:700;margin-bottom:60px}.profiles-horizontal{display:flex;flex-wrap:wrap;gap:50px;justify-content:center;margin-bottom:60px}.profile-card{cursor:pointer;text-align:center;transition:all .3s}.profile-card:hover{transform:scale(1.1)}.avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:4px solid #ffffff4d;border-radius:50%;box-shadow:0 8px 24px #0003;color:#fff;display:flex;font-size:48px;font-weight:700;height:140px;justify-content:center;margin:0 auto 15px;position:relative;width:140px}.avatar.admin{background:linear-gradient(135deg,#26a69a,#4db6ac)}.avatar.user{background:linear-gradient(135deg,#ff7961,#ff6b9d)}.lock-badge{background:#fff;border-radius:50%;bottom:-5px;box-shadow:0 4px 12px #0000004d;font-size:28px;padding:8px;position:absolute;right:-5px}.profile-name{color:#fff;font-size:20px;font-weight:600;margin-bottom:5px}.profile-type{color:#ffffffb3;font-size:14px}.logout-btn{background:#fff3;border:2px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 40px;transition:all .3s}.logout-btn:hover{background:#ffffff4d;border-color:#fff9;transform:translateY(-2px)}.pin-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.pin-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0006;max-width:400px;padding:40px;text-align:center;width:100%}.pin-modal .avatar{border:3px solid #ffffff4d;font-size:32px;height:80px;margin:0 auto 20px;width:80px}.pin-modal h3{color:#333;font-size:24px;margin:0 0 10px}.pin-modal p{color:#666;font-size:14px;margin:0 0 25px}.pin-input-container{gap:15px;margin-bottom:25px}.pin-dot,.pin-input-container{display:flex;justify-content:center}.pin-dot{align-items:center;border:2px solid #ddd;border-radius:8px;color:#999;font-size:32px;font-weight:700;height:50px;width:50px}.pin-dot.filled{background:#26a69a;border-color:#26a69a;color:#fff}.pin-input-hidden{opacity:0;pointer-events:none;position:absolute}.error-message{background:#ffebee;border-radius:8px;color:#ff5252;font-size:14px;margin:10px 0;padding:10px}.pin-buttons{display:flex;gap:10px}.pin-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px;transition:all .3s}.pin-btn.cancel{background:#f5f5f5;color:#666}.pin-btn.cancel:hover{background:#e0e0e0}.pin-btn.submit{background:#26a69a;color:#fff}.pin-btn.submit:hover{background:#1f8a7e}@media (max-width:768px){.profile-content h1{font-size:32px}.profiles-horizontal{gap:30px}.avatar{font-size:36px;height:100px;width:100px}}.dashboard-container{display:flex;flex-direction:column;font-size:13px;height:100vh;overflow:hidden}.top-nav{align-items:center;background:linear-gradient(90deg,#26a69a,#ff7961);box-shadow:0 2px 8px #00000026;color:#fff;display:flex;height:50px;justify-content:space-between;padding:0 25px;z-index:100}.logo{font-size:20px;font-weight:900;letter-spacing:-1px}.sidebar-toggle-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:20px;padding:4px 12px;transition:all .3s}.sidebar-toggle-btn:hover{background:#ffffff4d}.hamburger-menu{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;display:none;font-size:24px;padding:4px 12px;transition:all .3s}.hamburger-menu:hover{background:#ffffff4d}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:998}.top-nav-right{align-items:center;display:flex;gap:15px}.notification-icon{cursor:pointer;font-size:16px;transition:transform .2s}.notification-icon:hover{transform:scale(1.2)}.profile-info{align-items:center;display:flex;gap:10px}.user-avatar{background:#ffffff4d;border:2px solid #ffffff80;font-size:14px;height:25px;text-transform:uppercase;width:25px}.user-details{align-items:flex-start;display:flex;flex-direction:column;gap:2px}.user-name{font-size:13px}.user-role{color:#fff;font-size:11px;opacity:.9}.btn-change-profile{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;font-weight:500;padding:4px 10px;transition:all .3s}.btn-change-profile:hover{background:#ffffff4d;border-color:#ffffff80}.btn-logout{background:#fff3;border:1px solid #ffffff4d;border-radius:5px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 15px;transition:all .3s}.btn-logout:hover{background:#ffffff4d}.main-area{display:flex;flex:1 1;overflow:hidden}.sidebar{background:#fff;border-right:1px solid #e0e0e0;color:#333;overflow-y:auto;padding:15px 10px;transition:width .3s ease;width:200px}.sidebar.collapsed{width:70px}.sidebar.collapsed .nav-item{justify-content:center;padding:10px 5px}.nav-item{align-items:center;border-radius:8px;color:#666;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;margin-bottom:5px;padding:10px 15px;position:relative;transition:all .3s}.nav-item:hover{background:#f5f5f5;color:#26a69a;transform:translateX(3px)}.nav-item.active{background:#e0f2f1;box-shadow:0 2px 8px #26a69a26;color:#00897b}.nav-item.active:before{background:#26a69a;border-radius:0 3px 3px 0;content:"";height:60%;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.icon{display:inline-block;flex-shrink:0;font-size:14px;height:16px;width:16px}.nav-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);flex:1 1;overflow-y:auto;padding:20px}.welcome-banner{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 16px #667eea66;color:#fff;margin-bottom:20px;padding:20px 25px}.welcome-banner h2{font-size:22px;margin:0 0 8px}.welcome-banner p{font-size:14px;margin:0;opacity:.9}.stats-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.stat-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:18px;transition:transform .3s,box-shadow .3s}.stat-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-3px)}.stat-card.teal{border-left:4px solid #26a69a}.stat-card.coral{border-left:4px solid #ff7961}.stat-card.orange{border-left:4px solid #ffa726}.stat-label{color:#999;font-size:10px;font-weight:600;letter-spacing:.5px;margin-bottom:6px}.stat-value{color:#333;font-size:24px;font-weight:700}.quick-actions{display:flex;gap:12px;margin-bottom:20px}.action-btn{border:none;border-radius:8px;box-shadow:0 2px 8px #00000026;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.action-btn:hover{box-shadow:0 4px 12px #00000040;transform:translateY(-2px)}.action-btn.teal{background:linear-gradient(135deg,#26a69a,#4db6ac)}.action-btn.coral{background:linear-gradient(135deg,#ff7961,#ff6b9d)}.section-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.section-header{margin-bottom:18px}.section-header h2{font-size:20px}.form-card{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;margin-bottom:18px;padding:18px}.form-card input,.form-card select{border:2px solid #dee2e6;border-radius:6px;box-sizing:border-box;font-size:13px;margin-bottom:12px;padding:10px 12px;transition:border-color .3s;width:100%}.form-card input:focus,.form-card select:focus{border-color:#26a69a;outline:none}.btn-submit{padding:10px;width:100%}.items-list{display:flex;flex-direction:column;gap:12px}.item-card{align-items:center;background:#fff;border:2px solid #f0f0f0;border-radius:10px;display:flex;justify-content:space-between;padding:15px;transition:all .3s}.item-card:hover{border-color:#26a69a;box-shadow:0 2px 8px #26a69a1a}.item-info{flex:1 1}.item-amount{color:#26a69a;font-size:20px;font-weight:700;margin-bottom:4px}.item-category{color:#333;font-size:14px;font-weight:600;margin-bottom:4px}.item-description{color:#666;font-size:13px;margin-bottom:4px}.item-date{color:#999;font-size:11px}.btn-delete{background:#ff7961;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s}.btn-delete:hover{background:#ff5252;transform:translateY(-2px)}.coming-soon{padding:40px}.settings-submenu{border-bottom:2px solid #e9ecef;display:flex;gap:10px;padding-bottom:15px}.submenu-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#666;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s}.submenu-btn:hover{background:#f8f9fa;border-color:#26a69a;color:#26a69a}.submenu-btn.active{background:linear-gradient(135deg,#26a69a,#4db6ac);border-color:#26a69a;box-shadow:0 2px 8px #26a69a4d;color:#fff}@media (max-width:768px){.sidebar-toggle-btn{display:none}.hamburger-menu{display:block;left:10px;position:absolute;top:50px;z-index:1000}.mobile-overlay{display:block}.top-nav{padding:0 15px}.logo{font-size:18px}.top-nav-right{gap:8px}.btn-change-profile,.user-details{display:none}.notification-icon{font-size:20px}.stats-row{grid-template-columns:1fr}.sidebar{bottom:0;box-shadow:2px 0 8px #00000026;left:-250px;position:fixed;top:50px;transition:left .3s ease;width:250px;z-index:999}.sidebar.mobile-open{left:0}.sidebar.collapsed{width:250px}.content{padding:15px}.welcome-banner h2{font-size:18px}.welcome-banner p{font-size:13px}.stat-value{font-size:20px}.quick-actions{flex-direction:column}.action-btn{width:100%}.settings-submenu{flex-direction:column}.submenu-btn{justify-content:center;width:100%}table{display:block;overflow-x:auto;white-space:nowrap}tbody,thead,tr{display:table;table-layout:fixed;width:100%}}@media (max-width:480px){.top-nav{height:50px;padding:0 10px}.logo{font-size:16px}.btn-logout{font-size:12px;padding:6px 12px}.section-content,.stat-card{padding:15px}.section-header h2{font-size:18px}.btn-primary{font-size:12px;padding:8px 12px}}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.page-header h2{color:#333;font-size:24px;margin:0}.categories-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr}.category-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.category-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:12px}.category-header h3{font-size:18px;margin:0}.income-section .category-header h3{color:#26a69a}.expense-section .category-header h3{color:#ff7961}.category-count{color:#999;font-size:12px;font-weight:600}.category-table{border-collapse:collapse;width:100%}.category-table thead tr{background:#f8f9fa}.category-table th{color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.category-table th.center{text-align:center}.category-table tbody tr{transition:background .2s}.category-table tbody tr:hover{background:#f8f9fa}.category-table td{border-bottom:1px solid #f5f5f5;font-size:13px;padding:10px 12px}.category-name strong{color:#333;font-size:14px}.category-group,.category-ledger{color:#666}.category-budget{text-align:center}.budget-badge{border-radius:12px;font-size:11px;font-weight:600;padding:3px 10px}.budget-badge.yes{background:#e8f5e9;color:#2e7d32}.budget-badge.no{background:#fce4ec;color:#c2185b}.category-actions{justify-content:center;text-align:center}.category-actions .btn-edit{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.category-actions .btn-edit:hover{background:#f57c00;box-shadow:0 2px 4px #ff98004d;transform:translateY(-1px)}.category-actions .btn-delete-disabled{background:#e0e0e0;border:none;border-radius:6px;color:#999;cursor:not-allowed;font-size:12px;font-weight:600;opacity:.5;padding:6px 12px}.empty-state{padding:30px}@media (max-width:968px){.categories-grid{grid-template-columns:1fr}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:15px}.btn-primary{width:100%}.category-table{font-size:11px}.category-table td,.category-table th{padding:8px 6px}.category-actions{flex-direction:column;gap:4px}.btn-delete-disabled,.btn-edit{font-size:10px;padding:4px 8px}}.dialog-content{box-shadow:0 8px 32px #0000004d}.dialog-header{background:linear-gradient(135deg,#26a69a,#2bbbad);border-bottom:2px solid #e0e0e0;border-radius:12px 12px 0 0;color:#fff;padding:20px 24px}.btn-close{line-height:1}.dialog-body{max-height:60vh;overflow-y:auto;padding:24px}.form-field{margin-bottom:20px}.form-field label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.form-input,.form-select{border-radius:6px;box-sizing:border-box;padding:10px 12px;transition:border-color .3s}.radio-group{display:flex;gap:20px}.radio-option{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex:1 1;gap:8px;padding:10px 15px;transition:all .3s}.radio-option:hover{background:#f8f9fa;border-color:#26a69a}.radio-option input[type=radio]{cursor:pointer;height:18px;width:18px}.radio-option input[type=radio]:checked+span{color:#26a69a;font-weight:600}.radio-option span{color:#666;font-size:14px}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 0}.checkbox-label input[type=checkbox]{cursor:pointer;height:20px;width:20px}.checkbox-label span{color:#333;font-size:14px}.dialog-footer{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn-cancel{background:#e0e0e0;border:none;border-radius:6px;font-size:14px}.btn-cancel:hover{background:#d0d0d0}.btn-submit{border-radius:6px;font-size:14px}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #26a69a66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.dialog-content{max-width:none;width:95%}.radio-group{gap:10px}.dialog-footer,.radio-group{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.btn-toggle{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-toggle:hover{border-color:#26a69a;color:#26a69a}.btn-toggle.active{background:linear-gradient(135deg,#26a69a,#4db6ac);border-color:#26a69a;color:#fff}.btn-primary{border-radius:8px}.empty-state{font-size:14px;padding:40px}.grouped-accounts{display:flex;flex-direction:column;gap:30px}.account-group-section{background:#fff;border:2px solid #e0e0e0;border-radius:12px;overflow:hidden}.group-header{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-bottom:2px solid #e0e0e0;padding:15px 20px}.group-header h3{color:#333;font-size:18px;font-weight:700}.group-total{font-size:20px}.group-total.positive{color:#26a69a}.group-total.negative{color:#ff5252}.accounts-table{border-collapse:collapse;width:100%}.accounts-table thead tr{background:#f8f9fa}.accounts-table th{color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;padding:12px;text-align:left;text-transform:uppercase}.accounts-table th.right{text-align:right}.accounts-table th.center{text-align:center}.accounts-table tbody tr{transition:background .2s}.accounts-table tbody tr:hover{background:#f8f9fa}.accounts-table td{border-bottom:1px solid #f0f0f0;font-size:13px;padding:12px}.account-name{text-align:left}.account-name strong{color:#333;font-size:14px}.account-group,.account-ledger{color:#666;text-align:left}.account-balance{font-size:14px;font-weight:600;text-align:right}.account-status{text-align:center}.status-badge{border-radius:12px;padding:4px 12px}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#fce4ec;color:#c2185b}.account-flag{font-size:14px;text-align:center}.account-actions{display:flex;gap:8px;justify-content:center;text-align:center}.btn-records{background:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-records:hover{background:#1976d2;box-shadow:0 2px 4px #2196f34d;transform:translateY(-1px)}.btn-edit{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-edit:hover{background:#f57c00;box-shadow:0 2px 4px #ff98004d;transform:translateY(-1px)}.btn-delete-disabled{background:#e0e0e0;border:none;border-radius:6px;color:#999;cursor:not-allowed;font-size:12px;font-weight:600;opacity:.5;padding:6px 12px}@media (max-width:768px){.section-header{align-items:flex-start;flex-direction:column;gap:15px}.header-actions{flex-direction:column;width:100%}.btn-primary,.btn-toggle{width:100%}.accounts-table{font-size:11px}.accounts-table td,.accounts-table th{padding:8px 6px}.group-header{align-items:flex-start;flex-direction:column;gap:10px}.account-actions{flex-direction:column;gap:4px}.btn-delete-disabled,.btn-edit,.btn-records{font-size:10px;padding:4px 8px}}.account-transactions{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:15px}.account-header{margin-bottom:20px}.btn-back{background:#0000;border:2px solid #e0e0e0;border-radius:6px;color:#666;cursor:pointer;font-size:13px;font-weight:600;margin-bottom:12px;padding:6px 14px;transition:all .3s}.btn-back:hover{background:#f0f9f8;border-color:#26a69a;color:#26a69a}.account-info h2{color:#333;font-size:24px;font-weight:700;margin:0 0 4px}.account-type{color:#999;font-size:13px;font-weight:500;margin:0}.transaction-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}@media (max-width:1024px){.transaction-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.transaction-summary{grid-template-columns:1fr}}.summary-card{background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:15px;transition:all .3s}.summary-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.summary-card.balance{background:linear-gradient(135deg,#e0f2f1,#fff);border-color:#26a69a}.summary-card.inflow{background:linear-gradient(135deg,#e8f5e9,#fff);border-color:#4caf50}.summary-card.outflow{background:linear-gradient(135deg,#ffebee,#fff);border-color:#ff7961}.summary-label{color:#999;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.summary-value{color:#333;font-size:20px;font-weight:700}.summary-value.positive{color:#4caf50}.summary-value.negative{color:#ff7961}.transactions-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.filter-group{flex:1 1;min-width:200px}.filter-select,.search-input{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:10px 15px;transition:border-color .3s;width:100%}.filter-select:focus,.search-input:focus{border-color:#26a69a;outline:none}.custom-months-dropdown,.custom-months-filter{position:relative}.custom-months-dropdown-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:10px 15px;text-align:left;transition:border-color .3s;width:100%}.custom-months-dropdown-btn:hover{border-color:#26a69a}.dropdown-arrow{color:#999;font-size:10px;margin-left:10px}.custom-months-dropdown-content{background:#fff;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;display:block;left:0;margin-top:5px;max-height:400px;min-width:250px;position:absolute;top:100%;z-index:100}.month-actions{background:#f8f9fa;border-bottom:1px solid #f0f0f0;display:flex;gap:8px;padding:10px}.month-actions button{background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;flex:1 1;font-size:12px;font-weight:600;padding:8px 12px;transition:all .2s}.month-actions button:hover{background:#f8f9fa;border-color:#26a69a;color:#26a69a}.month-list{max-height:350px;overflow-y:auto;padding:5px 0}.month-checkbox{align-items:center;border-bottom:1px solid #f5f5f5;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 15px;transition:background .2s}.month-checkbox:last-child{border-bottom:none}.month-checkbox:hover{background:#f8f9fa}.month-checkbox input[type=checkbox]{cursor:pointer;height:16px;width:16px}.month-checkbox span{color:#333;flex:1 1;font-weight:500}.transaction-count{color:#999;font-weight:600;white-space:nowrap}.empty-state,.loading-state{padding:60px 20px}.empty-state{background:#f8f9fa;border:2px dashed #e0e0e0;border-radius:12px}.empty-icon{font-size:48px;margin-bottom:15px}.empty-state h3{color:#333;font-size:20px;margin:0 0 10px}.empty-state p{color:#999;font-size:14px;margin:0}.transactions-timeline{margin-top:15px}.month-group{margin-bottom:20px}.month-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;margin-bottom:10px;padding-bottom:6px}.month-dot{height:10px;width:10px}.month-label{color:#333;flex:1 1;font-size:14px;margin:0}.month-total{color:#666;font-size:13px;font-weight:700}.transactions-list{display:flex;flex-direction:column;gap:6px;margin-left:20px}.transaction-item{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:8px;display:flex;gap:12px;padding:10px 15px;transition:all .3s}.transaction-item:hover{border-color:#26a69a;box-shadow:0 2px 8px #26a69a26;transform:translateX(5px)}.transaction-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.transaction-item:has(.transaction-amount.positive) .transaction-icon{background:#e8f5e9;color:#4caf50}.transaction-item:has(.transaction-amount.negative) .transaction-icon{background:#ffebee;color:#ff7961}.transaction-details{flex:1 1;min-width:0}.transaction-description{color:#333;font-size:13px;font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-category{color:#999;font-size:11px;font-weight:500}.transaction-amount{font-size:15px;font-weight:700;white-space:nowrap}.transaction-amount.positive{color:#4caf50}.transaction-amount.negative{color:#ff7961}@media (max-width:768px){.account-transactions{padding:15px}.transaction-summary{grid-template-columns:1fr}.transactions-filters{align-items:stretch;flex-direction:column}.filter-group{min-width:100%}.transaction-count{text-align:center}.transactions-list{margin-left:0}.transaction-item{align-items:flex-start;flex-direction:column}.transaction-amount{align-self:flex-end;font-size:18px}}.load-more-container{margin-top:20px;padding:20px;text-align:center}.btn-load-more{background:linear-gradient(135deg,#26a69a,#4db6ac);border:none;border-radius:8px;box-shadow:0 2px 8px #26a69a4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 32px;transition:all .3s}.btn-load-more:hover:not(:disabled){box-shadow:0 4px 12px #26a69a66;transform:translateY(-2px)}.btn-load-more:disabled{cursor:not-allowed;opacity:.6}.load-info{color:#999;font-size:13px;margin:10px 0 0}.budgets-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.budgets-header h2{color:#333;font-size:20px;margin:0}.month-tabs{margin-bottom:25px}.month-tab{font-size:16px}.budget-section{margin-bottom:25px}.section-title{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;display:flex;justify-content:space-between;margin-bottom:12px;padding:10px 15px}.section-title.expense{background:linear-gradient(135deg,#ff7961,#ff6b9d)}.section-title.income{background:linear-gradient(135deg,#26a69a,#4db6ac)}.section-title.savings{background:linear-gradient(135deg,#ffa726,#fb8c00)}.section-title h3{font-size:15px;margin:0}.section-total{font-size:12px;font-weight:600}.budgets-container table{border-collapse:collapse;width:100%}.budgets-container th{background:#f8f9fa;color:#666;font-size:10px;font-weight:600;letter-spacing:.5px;padding:8px 10px;text-align:left;text-transform:uppercase}.budgets-container th.right{text-align:right}.budgets-container th.center{text-align:center}.budgets-container td{border-bottom:1px solid #f5f5f5;font-size:13px;padding:8px 10px}.budgets-container td.right{font-weight:600;text-align:right}.budgets-container td.center{text-align:center}.budgets-container tr:last-child td{border-bottom:none}.positive{color:#2e7d32}.negative{color:#c62828}.progress-bar{background:#e0e0e0;border-radius:3px;height:6px;margin:0 auto;overflow:hidden;width:80px}.progress-fill{background:#26a69a;height:100%;transition:width .3s}.progress-fill.over{background:#ff5252}.summary-row{background:#f8f9fa;font-weight:700}.summary-row td{border-top:2px solid #ddd;padding:12px 10px}.empty-state{color:#999;font-size:13px;padding:25px;text-align:center}.budgets-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:20px}.budgets-header,.header-controls{align-items:center;display:flex;gap:15px}.btn-customize{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-customize:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000004d;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #e0e0e0;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px 30px}.modal-header h3{font-size:22px;margin:0}.view-options{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding:30px}.view-option{background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;padding:25px;text-align:center;transition:all .3s}.view-option:hover{border-color:#667eea;box-shadow:0 8px 24px #667eea33;transform:translateY(-5px)}.view-option.active{background:linear-gradient(135deg,#f5f7ff,#f0f0ff);border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.view-icon{font-size:48px;margin-bottom:15px}.view-option h4{color:#333;font-size:18px;margin:0 0 10px}.view-option p{color:#666;font-size:13px;line-height:1.5;margin:0}.comparison-view{padding:20px 0}.comparison-header{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;gap:30px;justify-content:center;margin-bottom:30px;padding:20px}.month-selector{display:flex;flex-direction:column;gap:8px}.month-selector label{color:#666;font-size:14px;font-weight:600}.month-selector select{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:150px;padding:10px 15px}.month-selector select:focus{border-color:#667eea;outline:none}.vs-divider{color:#667eea;font-size:24px;font-weight:700;padding:0 20px}.rolling-12-view{padding:20px 0}.rolling-12-view h3{color:#333;font-size:20px;margin:0 0 20px}.quarter-view{padding:20px 0}.quarter-view h3{color:#333;font-size:20px;margin:0 0 20px}.yoy-view{padding:20px 0}.yoy-view h3{color:#333;font-size:20px;margin:0 0 20px}.coming-soon{background:#f8f9fa;border:2px dashed #ddd;border-radius:12px}.coming-soon,.loading-state{color:#666;font-size:16px;padding:60px 20px;text-align:center}.comparison-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.comparison-table{border-collapse:collapse;margin-top:15px;width:100%}.comparison-table td,.comparison-table th{border-bottom:1px solid #e0e0e0;padding:12px;text-align:left}.comparison-table thead th{background:#f8f9fa;color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.comparison-table tbody tr:hover{background:#f8f9fa}.variance-up{color:#4caf50;font-weight:600}.variance-down{color:#f44336;font-weight:600}.rolling-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.rolling-table-wrapper{margin-top:15px;overflow-x:auto}.rolling-table{border-collapse:collapse;min-width:1200px;width:100%}.rolling-table td,.rolling-table th{border-bottom:1px solid #e0e0e0;padding:10px 8px;text-align:left;white-space:nowrap}.rolling-table thead th{background:#f8f9fa;color:#666;font-size:11px;text-transform:uppercase;top:0;z-index:10}.rolling-table .sticky-col,.rolling-table thead th{font-weight:600;position:-webkit-sticky;position:sticky}.rolling-table .sticky-col{background:#fff;left:0;min-width:150px;z-index:5}.rolling-table thead .sticky-col{background:#f8f9fa;z-index:15}.rolling-table tbody tr:hover,.rolling-table tbody tr:hover .sticky-col{background:#f8f9fa}.summary-row{background:#f0f0f0!important;font-weight:600}.summary-row td{border-bottom:2px solid #dee2e6!important;border-top:2px solid #dee2e6!important}.positive{color:#4caf50}.negative{color:#f44336}.right{text-align:right!important}.center{text-align:center!important}.quarter-section,.yoy-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.yoy-current{background:#e8f5e9!important}.yoy-previous{background:#fff3e0!important}.rolling-table .yoy-current{border-right:1px solid #c8e6c9}.rolling-table .yoy-previous{border-right:1px solid #ffe0b2}@media (max-width:768px){.header-controls{flex-direction:column;width:100%}.btn-customize{width:100%}.view-options{grid-template-columns:1fr;padding:20px}.comparison-header{flex-direction:column;gap:15px}.vs-divider{padding:10px 0;transform:rotate(90deg)}.month-selector select{width:100%}}.transactions-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.transactions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.transactions-header h2{color:#333;font-size:20px;margin:0}.header-right,.year-selector{align-items:center;display:flex;gap:15px}.year-btn{background:none;border:none;color:#666;cursor:pointer;font-size:18px;transition:color .3s}.year-btn:hover{color:#26a69a}.year-display{color:#333;font-size:16px;font-weight:600;min-width:50px;text-align:center}.month-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:6px;margin-bottom:20px;overflow-x:auto;padding-bottom:5px}.month-tab{background:none;border:none;border-radius:5px 5px 0 0;color:#666;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .3s;white-space:nowrap}.month-tab:hover{background:#f5f5f5}.month-tab.active{background:linear-gradient(135deg,#26a69a,#4db6ac);color:#fff}.filters-bar{background:#f8f9fa;border-radius:8px;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:15px}.filter-group,.filters-bar{align-items:center;display:flex}.filter-group{gap:8px}.filter-group label{color:#666;font-size:12px;font-weight:600}.filter-group select{background:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 10px}.filter-group select:focus{border-color:#26a69a;outline:none}.category-dropdown,.category-filter{position:relative}.category-dropdown-btn{background:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:13px;min-width:150px;padding:6px 12px;text-align:left}.category-dropdown-btn:hover{border-color:#26a69a}.category-dropdown-content{background:#fff;border:2px solid #dee2e6;border-radius:6px;box-shadow:0 4px 12px #00000026;display:none;left:0;margin-top:4px;max-height:300px;min-width:200px;overflow-y:auto;position:absolute;top:100%;z-index:1000}.category-dropdown:focus-within .category-dropdown-content,.category-dropdown:hover .category-dropdown-content{display:block}.category-actions{border-bottom:1px solid #e9ecef;display:flex;gap:8px;padding:8px}.category-actions button{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;flex:1 1;font-size:11px;padding:4px 8px;transition:all .2s}.category-actions button:hover{background:#e9ecef}.category-checkbox{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;transition:background .2s}.category-checkbox:hover{background:#f8f9fa}.category-checkbox input[type=checkbox]{cursor:pointer}.category-checkbox span{flex:1 1}.btn-reset{background:#e9ecef;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .3s}.btn-reset:hover{background:#dee2e6}.transaction-count{color:#666;font-size:13px;font-weight:500;margin-left:auto}.btn-primary{box-shadow:0 2px 8px #26a69a4d;font-size:13px;padding:8px 16px}.grouped-tables{display:flex;flex-direction:column;gap:25px}.group-section{border-radius:8px;overflow:hidden}.group-header{align-items:center;background:linear-gradient(135deg,#26a69a,#4db6ac);border-radius:8px 8px 0 0;color:#fff;display:flex;justify-content:space-between;padding:12px 15px;-webkit-user-select:none;user-select:none}.group-header:hover{background:linear-gradient(135deg,#229e91,#45a89f)}.group-header h3{font-size:16px;font-weight:600;margin:0}.group-total{font-size:14px;font-weight:700}.transactions-table{border-collapse:collapse;width:100%}.transactions-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.transactions-table th.right{text-align:right}.transactions-table th.center{text-align:center}.transactions-table td{border-bottom:1px solid #f5f5f5;font-size:13px;padding:10px 12px}.transactions-table td.right{text-align:right}.transactions-table td.center{text-align:center}.transactions-table tbody tr:hover{background:#f8f9fa}.transactions-table tbody tr.unpaid{opacity:.6}.type-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;text-transform:capitalize}.type-badge.income{background:#e8f5e9;color:#2e7d32}.type-badge.expense{background:#ffebee;color:#c62828}.type-badge.transfer{background:#e3f2fd;color:#1565c0}.type-badge.payment{background:#fff3e0;color:#e65100}.amount.income{color:#2e7d32;font-weight:600}.amount.expense{color:#c62828;font-weight:600}.amount.transfer{color:#1565c0;font-weight:600}.amount.payment{color:#e65100;font-weight:600}.actions{display:flex;gap:8px;justify-content:center}.btn-icon{padding:4px}.btn-icon:hover{transform:scale(1.2)}.group-totals-row{background:#e8f5e9;font-weight:700}.group-totals-row td{border-top:2px solid #26a69a;color:#2e7d32;padding:12px}.grand-total{background:#f8f9fa;border-radius:8px;color:#333;font-size:16px;margin-top:10px;padding:15px 20px;text-align:right}.empty-state,.loading-state{color:#999;font-size:14px;padding:40px;text-align:center}@media (max-width:768px){.filters-bar{align-items:stretch;flex-direction:column}.filter-group{width:100%}.transaction-count{margin-left:0;text-align:center}.group-header{align-items:flex-start;flex-direction:column;gap:8px}}.type-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.type-modal-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000004d;max-width:700px;width:100%}.type-modal-header{align-items:center;background:linear-gradient(135deg,#26a69a,#4db6ac);border-bottom:2px solid #e0e0e0;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px 30px}.type-modal-header h2{font-size:24px;margin:0}.type-modal-header .btn-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;transition:all .3s;width:40px}.type-modal-header .btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.type-modal-body{padding:40px 30px}.type-instruction{color:#666;font-size:16px;margin:0 0 30px;text-align:center}.type-options{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.type-card{background:#fff;border:3px solid #e0e0e0;border-radius:12px;cursor:pointer;overflow:hidden;padding:30px 24px;position:relative;text-align:center;transition:all .3s}.type-card:before{background:linear-gradient(90deg,#26a69a,#4db6ac);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s}.type-card:hover{border-color:#26a69a;box-shadow:0 8px 24px #26a69a33;transform:translateY(-5px)}.type-card:hover:before{transform:scaleX(1)}.type-card.expense-income:hover{border-color:#ff7961}.type-card.expense-income:hover:before{background:linear-gradient(90deg,#ff7961,#ff6b9d)}.type-card.transfer-payment:hover{border-color:#2196f3}.type-card.transfer-payment:hover:before{background:linear-gradient(90deg,#2196f3,#42a5f5)}.type-icon{font-size:48px;margin-bottom:16px}.type-card h3{color:#333;font-size:20px;margin:0 0 12px}.type-card p{color:#666;font-size:14px;line-height:1.5;margin:0 0 20px}.type-examples{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.badge{border-radius:20px;padding:6px 14px;text-transform:uppercase}.badge.expense{background:#ffebee;color:#c62828}.badge.income{background:#e8f5e9;color:#2e7d32}.badge.transfer{background:#e3f2fd;color:#1565c0}.badge.payment{background:#fff3e0;color:#e65100}.draft-info{background:#f8f9fa;border-left:4px solid #26a69a;border-radius:8px;color:#333;font-size:14px;line-height:1.8;margin:20px 0;padding:20px}.draft-info p{margin:8px 0}.draft-options{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:30px}.draft-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;font-size:14px;gap:10px;min-width:140px;padding:25px 20px;text-align:center;transition:all .3s}.draft-icon{font-size:36px}.draft-btn h3{font-size:16px;font-weight:600;margin:0}.draft-btn p{color:#666;font-size:12px;margin:0}.draft-btn:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-3px)}.draft-btn.retrieve{border-color:#26a69a}.draft-btn.retrieve:hover{background:#26a69a;border-color:#26a69a}.draft-btn.retrieve:hover h3,.draft-btn.retrieve:hover p{color:#fff}.draft-btn.new-entry{border-color:#2196f3}.draft-btn.new-entry:hover{background:#2196f3;border-color:#2196f3}.draft-btn.new-entry:hover h3,.draft-btn.new-entry:hover p{color:#fff}.draft-btn.delete{border-color:#ff5252}.draft-btn.delete:hover{background:#ff5252;border-color:#ff5252}.draft-btn.delete:hover h3,.draft-btn.delete:hover p{color:#fff}@media (max-width:768px){.type-modal-overlay{padding:0}.type-modal-content{border-radius:0;max-width:100%;min-height:100vh;width:100%}.type-modal-header{border-radius:0;padding:20px}.type-modal-header h2{font-size:20px}.type-modal-body{padding:30px 20px}.type-options{gap:20px;grid-template-columns:1fr}.type-card{padding:24px 20px}.type-icon{font-size:40px}.type-card h3{font-size:18px}}@media (max-width:480px){.type-modal-header{padding:16px}.type-modal-header h2{font-size:18px}.type-modal-body{padding:24px 16px}.type-instruction{font-size:14px}}.bulk-transaction-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.bulk-transaction-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:1600px;width:95%}.bulk-header{align-items:center;background:linear-gradient(135deg,#26a69a,#4db6ac);border-bottom:2px solid #e0e0e0;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 25px}.bulk-header h2{font-size:20px;margin:0}.btn-close{height:36px;width:36px}.bulk-toolbar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;gap:12px;padding:15px 25px}.btn-action{background:linear-gradient(135deg,#26a69a,#4db6ac);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s}.btn-action:hover:not(:disabled){box-shadow:0 4px 12px #26a69a66;transform:translateY(-2px)}.btn-action:disabled{cursor:not-allowed;opacity:.5}.row-count{color:#666;font-size:13px;font-weight:600;margin-left:auto}.table-container{flex:1 1;overflow:auto;padding:0}.bulk-table{border-collapse:collapse;font-size:13px;width:100%}.bulk-table thead{background:#f8f9fa;position:-webkit-sticky;position:sticky;top:0;z-index:10}.bulk-table th{border-bottom:2px solid #dee2e6;color:#666;font-size:11px;font-weight:600;padding:12px 8px;text-align:left;text-transform:uppercase;white-space:nowrap}.bulk-table td.center,.bulk-table th.center{text-align:center}.bulk-table td{border-bottom:1px solid #f0f0f0;padding:8px;vertical-align:middle}.bulk-table tbody tr:hover{background:#f8f9fa}.bulk-table input[type=date],.bulk-table input[type=number],.bulk-table input[type=text],.bulk-table select{border:1px solid #dee2e6;border-radius:4px;box-sizing:border-box;font-size:13px;min-width:100px;padding:6px 8px;width:100%}.bulk-table input[type=date]:focus,.bulk-table input[type=number]:focus,.bulk-table input[type=text]:focus,.bulk-table select:focus{border-color:#26a69a;box-shadow:0 0 0 2px #26a69a1a;outline:none}.bulk-table input.required,.bulk-table select.required{border-left:3px solid #26a69a}.bulk-table input[type=checkbox]{cursor:pointer;height:18px;width:18px}.sticky-col{border-right:2px solid #dee2e6;font-weight:600;left:0;min-width:40px;text-align:center}.sticky-actions,.sticky-col{background:#f8f9fa;position:-webkit-sticky;position:sticky;z-index:5}.sticky-actions{border-left:2px solid #dee2e6;min-width:100px;right:0}.bulk-table tbody .sticky-col{background:#fff}.bulk-table tbody tr:hover .sticky-actions,.bulk-table tbody tr:hover .sticky-col{background:#f8f9fa}.totals-row{background:#f0f0f0!important;border-top:2px solid #dee2e6!important;font-weight:600}.totals-row td{border-bottom:2px solid #dee2e6!important;font-size:14px;padding:12px 8px!important}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;transition:transform .2s}.btn-icon:hover:not(:disabled){transform:scale(1.2)}.btn-icon:disabled{cursor:not-allowed;opacity:.3}.bulk-footer{align-items:center;background:#f8f9fa;border-radius:0 0 12px 12px;border-top:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:15px 25px}.help-text{color:#666;font-size:12px;margin:0}.footer-actions{display:flex;gap:12px}.btn-secondary{background:#fff;border:2px solid #dee2e6;padding:10px 20px}.btn-secondary:hover{background:#f8f9fa;border-color:#26a69a}.btn-primary{background:linear-gradient(135deg,#26a69a,#4db6ac);padding:10px 20px}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #26a69a66}.btn-primary:disabled{opacity:.5}.btn-draft{background:linear-gradient(135deg,#ff7961,#ff6b9d);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-draft:hover:not(:disabled){box-shadow:0 4px 12px #ff796166;transform:translateY(-2px)}.btn-draft:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.bulk-transaction-modal{padding:0}.bulk-transaction-content{border-radius:0;height:100vh;max-height:100vh;max-width:100%;width:100%}.bulk-header{border-radius:0;padding:15px}.bulk-header h2{font-size:16px}.bulk-toolbar{flex-wrap:wrap;padding:10px 15px}.bulk-table{font-size:12px}.bulk-table td,.bulk-table th{padding:6px 4px}.bulk-table input,.bulk-table select{font-size:12px;min-width:80px}.bulk-footer{align-items:stretch;flex-direction:column;gap:12px}.footer-actions{flex-direction:column;width:100%}.btn-primary,.btn-secondary{width:100%}}.widget{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;padding:20px}.widget-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.widget-header h3{color:#333;font-size:18px;font-weight:700;margin:0}.btn-toggle-visibility{background:#26a69a1a;border:1px solid #26a69a4d;border-radius:6px;color:#26a69a;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:all .3s}.btn-toggle-visibility:hover{background:#26a69a33;border-color:#26a69a}.total-balance{font-size:24px;font-weight:700}.total-balance.positive{color:#26a69a}.total-balance.negative{color:#ff5252}.total-balance.zero{color:#999}.balances-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.balance-card{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;padding:15px;transition:all .3s}.balance-card:hover{border-color:#26a69a;box-shadow:0 2px 8px #26a69a1a}.account-name{color:#666;font-size:13px;font-weight:600;margin-bottom:8px}.account-balance{font-size:20px;font-weight:700}.account-balance.positive{color:#26a69a}.account-balance.negative{color:#ff5252}.account-balance.zero{color:#999}.empty-message,.widget-loading{color:#999;font-size:14px;padding:40px;text-align:center}@media (max-width:768px){.balances-grid{grid-template-columns:1fr}.widget-header{align-items:flex-start;flex-direction:column;gap:15px}.total-balance{font-size:20px}}.users-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.users-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.users-modal-header{align-items:center;background:linear-gradient(135deg,#26a69a,#2bbbad);border-bottom:2px solid #e0e0e0;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px 30px}.users-modal-header h2{font-size:24px;margin:0}.btn-close{background:#fff3;color:#fff;font-size:28px;height:40px;transition:all .3s;width:40px}.btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.user-info-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-bottom:1px solid #e0e0e0;gap:20px;padding:30px}.avatar-circle,.user-info-card{align-items:center;display:flex}.avatar-circle{background:linear-gradient(135deg,#26a69a,#2bbbad);border-radius:50%;color:#fff;font-size:36px;font-weight:700;height:80px;justify-content:center;width:80px}.user-details h3{color:#333;font-size:20px;margin:0 0 5px}.user-details p{color:#666;font-size:14px;margin:0 0 10px}.badges{display:flex;gap:10px}.badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.badge-type{background:#e3f2fd;color:#1976d2}.badge-household{background:#f3e5f5;color:#7b1fa2}.current-profile-card{background:#f8f9fa;border-bottom:1px solid #e0e0e0;padding:20px 30px}.current-profile-card h4{color:#333;margin:0 0 15px}.profile-info{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(1,1fr);margin-bottom:5px}.profile-field{display:flex;flex-direction:column;gap:5px}.profile-field label{color:#666;font-size:12px;font-weight:600}.profile-field span{color:#333;font-size:14px}.btn-set-pin{background:linear-gradient(135deg,#ff7961,#ff6b9d);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .3s}.btn-set-pin:hover{box-shadow:0 4px 12px #ff796166;transform:translateY(-2px)}.tabs{background:#f8f9fa;border-bottom:2px solid #e0e0e0;display:flex}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:15px;transition:all .3s}.tab:hover{background:#f0f0f0;color:#333}.tab.active{background:#fff;border-bottom-color:#26a69a;color:#26a69a}.tab-content{padding:30px}.users-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.user-row{grid-gap:15px;align-items:center;display:grid;gap:15px;grid-template-columns:40px 1fr 200px auto}.user-number{align-items:center;background:#e0e0e0;border-radius:50%;color:#666;display:flex;font-weight:600;height:35px;justify-content:center;width:35px}.user-input,.user-select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:10px;transition:all .3s}.user-input:focus,.user-select:focus{border-color:#26a69a;outline:none}.locked-badge{background:#ffc107;border-radius:6px;color:#333;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.admin-badge{background:#ff9800;border-radius:4px;color:#fff;font-size:10px;font-weight:600;margin-top:4px;padding:2px 8px}.linked-users-section{border-top:2px solid #e0e0e0;margin-top:30px;padding-top:20px}.linked-users-section h4{color:#333;margin:0 0 15px}.linked-users-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.linked-user-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;gap:12px;padding:12px}.linked-user-item,.user-avatar{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#26a69a,#2bbbad);border-radius:50%;color:#fff;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.user-info{display:flex;flex-direction:column;gap:4px}.user-name{color:#fff;font-size:14px;font-weight:600}.user-type{background:#26a69a;color:#fff}.roles-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.role-row{grid-gap:15px;align-items:center;display:grid;gap:15px;grid-template-columns:100px 1fr}.role-row label{color:#666;font-weight:600}.role-input{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:10px;transition:all .3s}.role-input:disabled{background:#f0f0f0;cursor:not-allowed}.role-input:focus{border-color:#26a69a;outline:none}.household-field{margin-bottom:20px}.household-field label{color:#666;display:block;font-weight:600;margin-bottom:8px}.household-input{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:12px;transition:all .3s;width:100%}.household-input:focus{border-color:#26a69a;outline:none}.tab-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-primary{background:linear-gradient(135deg,#26a69a,#2bbbad);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s}.btn-primary:hover{box-shadow:0 4px 12px #26a69a66;transform:translateY(-2px)}.btn-secondary{background:#e0e0e0;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s}.btn-secondary:hover{background:#d0d0d0}.btn-danger{background:linear-gradient(135deg,#ff5252,#ff7961);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s}.btn-danger:hover{box-shadow:0 4px 12px #ff525266;transform:translateY(-2px)}.pin-dialog-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.pin-dialog{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;width:90%}.pin-dialog-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.pin-dialog-header h3{color:#333;font-size:18px;margin:0}.pin-dialog-body{padding:20px}.pin-input{border:2px solid #e0e0e0;border-radius:6px;font-size:16px;letter-spacing:4px;padding:12px;text-align:center;width:100%}.pin-input:focus{border-color:#26a69a;outline:none}.pin-dialog-actions{border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;padding:20px}.loading{color:#666;font-size:16px;padding:40px;text-align:center}@media (max-width:768px){.users-modal{border-radius:0;max-height:100vh;max-width:100%}.user-info-card{flex-direction:column;text-align:center}.profile-info,.user-row{grid-template-columns:1fr}.user-number{display:none}.linked-users-list,.role-row{grid-template-columns:1fr}.tab-actions{flex-direction:column}.btn-danger,.btn-primary,.btn-secondary{width:100%}}.files-cabinet-tree{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.section-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.section-header h2{color:#333;font-size:24px;margin:0}.header-actions{gap:12px}.btn-header-action{background:#fff;border:2px solid #26a69a;border-radius:8px;color:#26a69a;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s;white-space:nowrap}.btn-header-action:hover{background:#f0f9f8;box-shadow:0 2px 8px #26a69a33;transform:translateY(-1px)}.btn-header-action.btn-primary{background:#26a69a;border-color:#26a69a;color:#fff}.btn-header-action.btn-primary:hover{background:#239b8e;border-color:#239b8e}.search-input{border:2px solid #e0e0e0;border-radius:8px;font-size:13px;padding:8px 15px;transition:border-color .3s;width:250px}.search-input:focus{border-color:#26a69a;outline:none}.file-count{color:#999;font-size:13px;font-weight:600}.tree-container{margin-top:20px}.tree-section{margin-bottom:5px}.tree-section-header{align-items:center;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px 15px;transition:all .3s;-webkit-user-select:none;user-select:none}.tree-section-header:hover{background:#e9ecef;transform:translateX(2px)}.expand-icon{color:#666;font-size:12px;min-width:15px;transition:transform .3s}.section-icon{font-size:18px}.section-label{color:#333;flex:1 1;font-size:15px;font-weight:600}.section-count{color:#999;font-size:12px;margin-left:auto}.tree-section-content{margin-top:5px;padding-left:25px}.tree-submenu{margin-left:10px}.tree-submenu-item{margin-bottom:5px}.tree-submenu-header{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:10px 12px;transition:all .3s;-webkit-user-select:none;user-select:none}.tree-submenu-header:hover{background:#f8f9fa;border-color:#26a69a}.coming-soon-badge{background:#ffc107;border-radius:10px;color:#fff;font-size:10px;font-weight:700;padding:2px 8px;text-transform:uppercase}.tree-files-list{display:flex;flex-direction:column;gap:10px;margin-left:15px;margin-top:8px}.month-group{margin-bottom:8px}.month-group-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:6px;cursor:pointer;display:flex;gap:8px;margin-bottom:6px;padding:6px 10px;transition:all .2s;-webkit-user-select:none;user-select:none}.month-group-header:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);transform:translateX(2px)}.expand-icon-small{color:#666;font-size:10px;min-width:12px}.month-dot{background:#26a69a;border-radius:50%;flex-shrink:0;height:8px;width:8px}.month-label{color:#00897b;font-size:13px;font-weight:700}.month-count{color:#999;font-size:11px;margin-left:auto}.month-group-files{display:flex;flex-direction:column;gap:4px;padding-left:20px}.tree-loading{font-size:14px;font-style:italic}.tree-loading,.tree-no-files{color:#999;padding:15px;text-align:center}.tree-no-files{background:#f8f9fa;border:2px dashed #e0e0e0;border-radius:6px;font-size:13px}.tree-coming-soon{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;color:#999;font-size:14px;margin:10px 0;padding:20px;text-align:center}.file-list-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;gap:10px;padding:8px 10px;transition:all .2s}.file-list-item:hover{border-color:#26a69a;box-shadow:0 2px 6px #26a69a1f;transform:translateX(2px)}.file-list-icon{align-items:center;border-radius:6px;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;height:38px;justify-content:center;width:38px}.file-list-info{flex:1 1;min-width:0}.file-list-name{color:#333;font-size:13px;font-weight:600;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-list-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.file-account-tag{background:#26a69a;border-radius:8px;color:#fff;font-size:10px;font-weight:600;padding:2px 6px}.file-date{color:#999;font-size:10px}.file-txn-count{background:#f0f0f0;border-radius:8px;color:#666;font-size:10px;padding:2px 5px}.file-list-actions{display:flex;flex-shrink:0;gap:6px}.btn-delete-small,.btn-view-small{border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:11px;font-weight:600;padding:5px 12px;transition:all .2s}.btn-view-small{background:#26a69a}.btn-view-small:hover{background:#239b8e;box-shadow:0 2px 5px #26a69a4d;transform:translateY(-1px)}.btn-delete-small{background:#ff7961}.btn-delete-small:hover{background:#ff5252;box-shadow:0 2px 5px #ff79614d;transform:translateY(-1px)}@media (max-width:768px){.header-actions{flex-wrap:wrap;gap:8px;width:100%}.search-input{flex:1 1 100%;order:-1}.file-count{order:1}.btn-header-action{flex:1 1;order:2}.tree-section-content{padding-left:15px}.file-list-item{flex-wrap:wrap}.file-list-info{flex:1 1 100%}.file-list-actions{flex:1 1 100%;justify-content:flex-end}.btn-delete-small,.btn-view-small{flex:1 1}}.upload-modal-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.upload-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:550px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.upload-modal-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.upload-modal-header h2{color:#333;font-size:22px;font-weight:700;margin:0}.btn-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-close:hover{background:#f8f9fa;color:#333}.upload-modal-body{padding:24px}.form-label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.file-input-wrapper{position:relative}.file-input{height:0;opacity:0;position:absolute;width:0}.file-input-label{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:10px;cursor:pointer;display:flex;justify-content:center;min-height:60px;padding:16px 20px;transition:all .3s}.file-input-label:hover{background:#e9ecef;border-color:#26a69a}.file-placeholder{color:#999;font-size:14px}.file-selected{color:#26a69a;font-size:14px;font-weight:600}.form-input,.form-select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#333;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s;width:100%}.form-input:focus,.form-select:focus{border-color:#26a69a;box-shadow:0 0 0 3px #26a69a1a;outline:none}.form-select:disabled{background:#f8f9fa;color:#999;cursor:not-allowed}.form-select option{padding:10px}.form-hint{color:#999;font-size:12px;margin-bottom:0;margin-top:6px}.form-hint.error{color:#ff5252;font-weight:600}.file-preview{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left:4px solid #26a69a;border-radius:10px;margin-top:24px;padding:16px}.preview-label{color:#00897b;font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.preview-details{display:flex;flex-direction:column;gap:6px}.preview-details p{color:#333;font-size:13px;margin:0}.preview-details strong{color:#00897b;font-weight:600}.upload-modal-footer{border-top:2px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:100px;padding:10px 24px;transition:all .3s}.btn-primary{background:#26a69a;color:#fff}.btn-primary:hover:not(:disabled){background:#239b8e;box-shadow:0 4px 12px #26a69a4d;transform:translateY(-2px)}.btn-primary:disabled{background:#b0bec5;cursor:not-allowed;transform:none}.btn-secondary{background:#e9ecef;color:#333}.btn-secondary:hover:not(:disabled){background:#dee2e6}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.upload-modal{margin:20px;max-width:none;width:95%}.upload-modal-header{padding:16px 20px}.upload-modal-header h2{font-size:18px}.upload-modal-body{padding:20px}.upload-modal-footer{flex-direction:column;padding:16px 20px}.btn-primary,.btn-secondary{width:100%}.file-preview{padding:12px}.preview-details p{font-size:12px}}.btn-primary:disabled,.form-select:disabled{position:relative}.btn-primary:disabled:after{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:14px;position:absolute;right:15px;top:50%;transform:translateY(-50%);width:14px}@keyframes spin{to{transform:translateY(-50%) rotate(1turn)}}.filter-select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px;transition:all .3s}.filter-select:focus{border-color:#26a69a;outline:none}.filter-select:hover{border-color:#26a69a}.header-actions{align-items:center;display:flex;gap:10px}.periods-list{display:flex;flex-direction:column;gap:10px;margin-top:15px}.period-card{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px;transition:all .3s}.period-card:hover{border-color:#26a69a;box-shadow:0 2px 8px #26a69a26;transform:translateY(-1px)}.period-info{flex:1 1}.period-header{align-items:center;display:flex;gap:12px;margin-bottom:6px}.period-title{color:#333;font-size:15px;font-weight:700;margin:0}.status-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:3px 10px}.status-badge.open{background:#e8f5e9;color:#2e7d32}.status-badge.closed{background:#fce4ec;color:#c2185b}.period-date-display{align-items:center;display:flex;font-size:12px;gap:6px}.date-label{color:#666;font-weight:600}.date-value{background:#f5f5f5;border-radius:4px;color:#333;font-family:Courier New,monospace;padding:2px 8px}.period-actions{align-items:center;display:flex;gap:8px}.period-actions .btn-toggle-status{align-items:center;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:6px 14px;transition:all .2s}.period-actions .btn-toggle-status.open{background:#d32f2f}.period-actions .btn-toggle-status.open:hover{background:#b71c1c;box-shadow:0 2px 4px #d32f2f4d;transform:translateY(-1px)}.period-actions .btn-toggle-status.closed{background:#388e3c}.period-actions .btn-toggle-status.closed:hover{background:#2e7d32;box-shadow:0 2px 4px #388e3c4d;transform:translateY(-1px)}.period-actions .btn-edit{background:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px;transition:all .2s}.period-actions .btn-edit:hover{background:#f57c00;box-shadow:0 2px 4px #ff98004d;transform:translateY(-1px)}.period-actions .btn-delete-disabled{background:#e0e0e0;border:none;border-radius:6px;color:#999;cursor:not-allowed;font-size:12px;font-weight:600;opacity:.5;padding:6px 14px}.dialog-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dialog-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:0;width:90%}.dialog-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 25px}.dialog-header h3{color:#333;font-size:20px;margin:0}.dialog-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.dialog-close:hover{background:#f0f0f0;color:#333}.dialog-content form{padding:25px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.form-group input[type=month]{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:13px;padding:10px 12px;transition:border-color .3s;width:100%}.form-group input[type=month]:focus{border-color:#26a69a;outline:none}.help-text{color:#999;font-size:11px;font-style:italic;margin-top:6px}.checkbox-group{margin-top:10px}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:10px}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.checkbox-group span{color:#666;font-size:13px;font-weight:400}.dialog-actions{border-top:2px solid #f0f0f0;display:flex;gap:10px;justify-content:flex-end;margin-top:25px;padding-top:20px}.btn-cancel{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-cancel:hover{background:#f8f9fa;border-color:#999;color:#333}.btn-submit{background:linear-gradient(135deg,#26a69a,#4db6ac);border:none;border-radius:8px;box-shadow:0 2px 8px #26a69a4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-submit:hover{box-shadow:0 4px 12px #26a69a66;transform:translateY(-2px)}@media (max-width:768px){.period-card{gap:15px;padding:15px}.period-card,.period-header{align-items:flex-start;flex-direction:column}.period-header{gap:8px}.period-title{font-size:16px}.period-actions{justify-content:flex-start;width:100%}.period-actions .btn-delete-disabled,.period-actions .btn-edit,.period-actions .btn-toggle-status{flex:1 1;justify-content:center;text-align:center}.dialog-content{width:95%}.dialog-header{padding:15px 20px}.dialog-content form{padding:20px}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.b16a763b.css.map*/