@supports (view-transition-name: none){@view-transition{navigation: auto}::view-transition-old(root),::view-transition-new(root){animation-duration: var(--meetang-view-transition-duration,0.18s);animation-timing-function: cubic-bezier(0.22,1,0.36,1)}::view-transition-old(root){animation-name: meetangFadeOut}::view-transition-new(root){animation-name: meetangFadeIn}}@keyframes meetangFadeIn{from{opacity: 0;transform: translateY(10px)}to{opacity: 1;transform: translateY(0)}}@keyframes meetangFadeOut{from{opacity: 1;transform: translateY(0)}to{opacity: 0;transform: translateY(-8px)}}*{font-family: 'Noto Sans Thai','Inter',sans-serif;margin: 0;padding: 0;box-sizing: border-box}:root{--bg-primary: #0f0f23;--bg-secondary: #1a1a2e;--bg-card: #16213e;--card-background: #16213e;--input-background: rgba(15,15,35,0.8);--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--border-color: rgba(255,255,255,0.1);--accent-primary: #6366f1;--accent-secondary: #8b5cf6;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--meetang-view-transition-duration: 0.18s;--meetang-transition-duration: 0.2s}html[data-device-capability="low"]{--meetang-view-transition-duration: 0.001ms;--meetang-transition-duration: 0.001ms}html[data-device-capability="medium"]{--meetang-view-transition-duration: 0.14s;--meetang-transition-duration: 0.16s}body{background: linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);min-height: 100vh;min-height: 100svh;transition: background-color var(--meetang-transition-duration) ease,color var(--meetang-transition-duration) ease;color: var(--text-primary);overflow-x: hidden;overscroll-behavior-y: contain;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}@supports (min-height: 100dvh){body{min-height: 100dvh}}html[data-device-capability="low"] body,body[data-device-capability="low"]{background: var(--bg-primary)}html[data-device-capability="low"] *,body[data-device-capability="low"] *{transition: none !important;animation: none !important}body.light-mode{--bg-primary: #f1f5f9;--bg-secondary: #e2e8f0;--bg-card: #ffffff;--card-background: #ffffff;--input-background: rgba(255,255,255,0.96);--text-primary: #1e293b;--text-secondary: #64748b;--border-color: rgba(0,0,0,0.1)}.glass{background: rgba(22,33,62,0.6);backdrop-filter: blur(20px) saturate(180%);-webkit-backdrop-filter: blur(20px) saturate(180%);border: 1px solid var(--border-color);box-shadow: 0 8px 32px 0 rgba(0,0,0,0.37)}body.light-mode .glass{background: rgba(255,255,255,0.8);box-shadow: 0 8px 32px 0 rgba(0,0,0,0.1)}.glass-white{background: var(--bg-card);backdrop-filter: blur(20px) saturate(180%);-webkit-backdrop-filter: blur(20px) saturate(180%);border: 1px solid var(--border-color);box-shadow: 0 8px 32px 0 rgba(0,0,0,0.3);color: var(--text-primary)}html[data-device-capability="low"] .glass,html[data-device-capability="low"] .glass-white,body[data-device-capability="low"] .glass,body[data-device-capability="low"] .glass-white{backdrop-filter: none !important;-webkit-backdrop-filter: none !important;background: var(--bg-card) !important;box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important}html[data-device-capability="medium"] .glass,html[data-device-capability="medium"] .glass-white,body[data-device-capability="medium"] .glass,body[data-device-capability="medium"] .glass-white{backdrop-filter: blur(10px) !important;-webkit-backdrop-filter: blur(10px) !important;box-shadow: 0 4px 16px rgba(0,0,0,0.25) !important}.btn-primary{background: linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);transition: all 0.3s cubic-bezier(0.4,0,0.2,1);border: none;color: white}.btn-primary:hover{transform: translateY(-2px);box-shadow: 0 12px 24px rgba(99,102,241,0.4)}.btn-primary:active{transform: translateY(0)}.btn-secondary{background: var(--bg-card);border: 1px solid var(--border-color);color: var(--text-primary);transition: all 0.3s ease}.btn-secondary:hover{background: rgba(99,102,241,0.1);border-color: var(--accent-primary)}.swal2-container{z-index: 1000001 !important;pointer-events: auto !important;overscroll-behavior: contain !important;-webkit-overflow-scrolling: touch;touch-action: manipulation}:root{--swal2-backdrop-transition: none !important;--swal2-show-animation: none !important;--swal2-hide-animation: none !important;--swal2-toast-show-animation: none !important;--swal2-toast-hide-animation: none !important;--swal2-icon-animations: false !important}.swal2-show,.swal2-backdrop-show,.swal2-hide,.swal2-backdrop-hide{animation: none !important;transition: none !important}.swal2-popup.meetang-swal-popup,.swal2-toast.meetang-swal-toast{border-radius: 24px !important;border: 1px solid var(--border-color) !important;background: linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0.01)),var(--card-background,var(--bg-card)) !important;color: var(--text-primary) !important;box-shadow: 0 22px 48px -30px rgba(15,23,42,0.52) !important;backdrop-filter: blur(18px) saturate(160%);-webkit-backdrop-filter: blur(18px) saturate(160%)}.swal2-popup.meetang-swal-popup{padding: 1.35rem !important;pointer-events: auto !important;max-width: min(92vw,30rem) !important;touch-action: manipulation}.swal2-toast.meetang-swal-toast{padding: 0.9rem 1rem !important}.swal2-title.meetang-swal-title{color: var(--text-primary) !important;font-size: 1.42rem !important;font-weight: 800 !important;letter-spacing: -0.02em}.swal2-html-container.meetang-swal-html,.swal2-html-container{color: var(--text-secondary) !important;line-height: 1.7 !important}.swal2-actions.meetang-swal-actions{gap: 0.7rem !important;margin-top: 1.1rem !important;pointer-events: auto !important;width: 100% !important}.swal2-confirm.meetang-swal-confirm,.swal2-cancel.meetang-swal-cancel,.swal2-deny.meetang-swal-deny{border-radius: 16px !important;padding: 0.8rem 1rem !important;min-width: 7rem !important;min-height: 3rem !important;font-weight: 700 !important;box-shadow: none !important;pointer-events: auto !important;touch-action: manipulation;-webkit-tap-highlight-color: transparent;user-select: none;-webkit-user-select: none}.swal2-confirm.meetang-swal-confirm:not([disabled]),.swal2-cancel.meetang-swal-cancel:not([disabled]),.swal2-deny.meetang-swal-deny:not([disabled]){opacity: 1 !important;cursor: pointer !important}.swal2-confirm.meetang-swal-confirm{background: linear-gradient(135deg,var(--accent-primary),var(--accent-secondary)) !important;color: #ffffff !important}.swal2-cancel.meetang-swal-cancel{background: rgba(148,163,184,0.12) !important;border: 1px solid rgba(148,163,184,0.18) !important;color: var(--text-primary) !important}.swal2-deny.meetang-swal-deny{background: rgba(239,68,68,0.12) !important;border: 1px solid rgba(239,68,68,0.16) !important;color: #fecaca !important}.swal2-icon.meetang-swal-icon.swal2-success{border-color: rgba(16,185,129,0.35) !important;color: var(--success) !important}.swal2-icon.meetang-swal-icon.swal2-success [class^='swal2-success-line']{background-color: var(--success) !important;border-radius: 999px !important}.swal2-icon.meetang-swal-icon.swal2-success .swal2-success-ring{border-color: rgba(16,185,129,0.22) !important}.swal2-icon.meetang-swal-icon.swal2-success [class^='swal2-success-circular-line']{display: none !important}.swal2-icon.meetang-swal-icon.swal2-success .swal2-success-fix{display: none !important}.swal2-icon.meetang-swal-icon.swal2-success .swal2-success-line-tip{left: 0.8125em !important;top: 2.875em !important;width: 1.5625em !important;transform: rotate(45deg) !important}.swal2-icon.meetang-swal-icon.swal2-success .swal2-success-line-long{top: 2.375em !important;right: 0.5em !important;width: 2.9375em !important;transform: rotate(-45deg) !important}.swal2-toast .swal2-icon.meetang-swal-icon.swal2-success [class^='swal2-success-circular-line']{display: block !important}.swal2-toast .swal2-icon.meetang-swal-icon.swal2-success .swal2-success-fix{display: block !important;background: var(--card-background,var(--bg-card)) !important;top: 0 !important;left: 0.4375em !important;width: 0.4375em !important;height: 2.6875em !important;transform: rotate(-45deg) !important}.swal2-toast .swal2-icon.meetang-swal-icon.swal2-success .swal2-success-line-tip{top: 1.125em !important;left: 0.1875em !important;width: 0.75em !important;transform: rotate(45deg) !important}.swal2-toast .swal2-icon.meetang-swal-icon.swal2-success .swal2-success-line-long{top: 0.9375em !important;right: 0.1875em !important;width: 1.375em !important;transform: rotate(-45deg) !important}.swal2-icon.meetang-swal-icon.swal2-warning{border-color: rgba(245,158,11,0.35) !important;color: var(--warning) !important}.swal2-icon.meetang-swal-icon.swal2-error{border-color: rgba(239,68,68,0.35) !important;color: var(--danger) !important}.swal2-close.meetang-swal-close{color: var(--text-secondary) !important}.swal2-timer-progress-bar{background: linear-gradient(90deg,var(--accent-primary),var(--accent-secondary)) !important}body.light-mode .swal2-popup.meetang-swal-popup,body.light-mode .swal2-toast.meetang-swal-toast{box-shadow: 0 18px 40px -28px rgba(15,23,42,0.22) !important}@media (max-width: 640px){.swal2-container{align-items: center !important;padding: max(0.85rem,env(safe-area-inset-top)) 0.75rem max(0.85rem,env(safe-area-inset-bottom)) !important}.swal2-popup.meetang-swal-popup{width: min(100%,27rem) !important;max-height: calc(100dvh - 2rem) !important;padding: 1.15rem !important;border-radius: 22px !important;overflow: hidden !important}.swal2-title.meetang-swal-title{font-size: 1.28rem !important;line-height: 1.25 !important}.swal2-html-container.meetang-swal-html,.swal2-html-container{max-height: 42dvh !important;overflow-y: auto !important;touch-action: pan-y !important}.swal2-actions.meetang-swal-actions{margin-top: 1rem !important}.swal2-confirm.meetang-swal-confirm,.swal2-cancel.meetang-swal-cancel,.swal2-deny.meetang-swal-deny{flex: 1 1 auto !important;min-width: 8.5rem !important;min-height: 3.35rem !important;font-size: 1rem !important}}.sidebar{background: var(--bg-card);backdrop-filter: blur(20px);border-right: 1px solid var(--border-color);transition: all 0.3s ease;overflow-y: auto;scrollbar-width: thin;scrollbar-color: var(--accent-primary) transparent}.sidebar::-webkit-scrollbar{width: 6px}.sidebar::-webkit-scrollbar-track{background: transparent}.sidebar::-webkit-scrollbar-thumb{background: var(--accent-primary);border-radius: 3px}@media (max-width: 768px){.sidebar{position: fixed;left: -100%;top: 0;height: 100vh !important;max-height: 100vh !important;z-index: 1000;width: 280px;overflow-y: auto;overflow-x: hidden;-webkit-overflow-scrolling: touch;display: block !important}.sidebar.active{left: 0}.sidebar-overlay{display: none;position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0,0,0,0.5);z-index: 999}.sidebar-overlay.active{display: block}.sidebar>*{flex-shrink: 0;flex-grow: 0}.sidebar>nav{overflow-y: visible !important}.sidebar{padding-bottom: 20px}}.nav-item{transition: all 0.2s cubic-bezier(0.4,0,0.2,1);position: relative;overflow: hidden;color: var(--text-primary)}.nav-item::before{content: '';position: absolute;left: 0;top: 0;bottom: 0;width: 3px;background: var(--accent-primary);transform: scaleY(0);transition: transform 0.2s ease}.nav-item:not(.active):hover{background: rgba(99,102,241,0.08);transform: translateX(3px)}.nav-item.active{background: rgba(99,102,241,0.15) !important;color: var(--accent-primary) !important;transform: translateX(0) !important}.nav-item.active::before{transform: scaleY(1)}.nav-item.active:hover{background: rgba(99,102,241,0.2) !important}.card{transition: all 0.3s cubic-bezier(0.4,0,0.2,1);background: var(--bg-card);border: 1px solid var(--border-color)}.card:hover{transform: translateY(-4px);box-shadow: 0 16px 40px rgba(0,0,0,0.3);border-color: var(--accent-primary)}@media (max-width: 768px){.card:hover{transform: translateY(-2px)}}body[data-device-capability="low"] .card:hover{transform: none !important;box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;border-color: var(--border-color) !important}body[data-device-capability="medium"] .card:hover{transform: translateY(-2px) !important;box-shadow: 0 8px 20px rgba(0,0,0,0.25) !important}.badge{display: inline-block;padding: 0.25rem 0.75rem;font-size: 0.875rem;font-weight: 600;border-radius: 9999px}.badge-income{background-color: #10B981;color: white}.badge-expense{background-color: #EF4444;color: white}.modal{display: none;position: fixed;z-index: 1000;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.5);backdrop-filter: blur(5px)}.modal.show{display: flex;align-items: center;justify-content: center}body.modal-open{overflow: hidden}.animate-fade-in{animation: fadeIn 0.5s ease-in}@keyframes fadeIn{from{opacity: 0;transform: translateY(20px)}to{opacity: 1;transform: translateY(0)}}@media (prefers-reduced-motion: reduce){*:not(#preloader):not(.loading-bar){animation: none !important;transition: none !important}}body[data-device-capability="low"] .animate-fade-in{animation: none !important;opacity: 1 !important;transform: none !important}body[data-device-capability="low"] .preloader-spinner{animation: preloader-spin 0.8s linear infinite !important}.select-all{user-select: all !important;-webkit-user-select: all !important;-moz-user-select: all !important;-ms-user-select: all !important}.hover-row{transition: background-color 0.2s ease}.hover-row:hover{background: rgba(99,102,241,0.08) !important}.card{transition: transform 0.2s ease,box-shadow 0.2s ease}.card:hover{transform: translateY(-2px);box-shadow: 0 8px 16px rgba(99,102,241,0.2)}.text-gray-800,.text-gray-900{color: var(--text-primary) !important}.text-gray-700{color: var(--text-primary) !important;opacity: 0.9}.text-gray-600{color: var(--text-secondary) !important}.text-gray-500{color: var(--text-secondary) !important;opacity: 0.8}.text-gray-400{color: var(--text-secondary) !important;opacity: 0.6}.text-white{color: var(--text-primary) !important}label{color: var(--text-primary) !important}.glass-white *{color: var(--text-primary)}.glass *{color: var(--text-primary)}input,select,textarea{background: rgba(15,15,35,0.8);color: var(--text-primary) !important;border: 1px solid var(--border-color);transition: all 0.3s ease}input:focus,select:focus,textarea:focus{background: rgba(22,33,62,0.9);border-color: var(--accent-primary);outline: none;box-shadow: 0 0 0 3px rgba(99,102,241,0.15)}input::placeholder,textarea::placeholder{color: var(--text-secondary);opacity: 0.7}select{background: rgba(15,15,35,0.8);color: var(--text-primary) !important;cursor: pointer}select option{background: #16213e;color: var(--text-primary);padding: 8px}input:disabled,select:disabled,textarea:disabled{background: rgba(107,114,128,0.1);color: var(--text-secondary);cursor: not-allowed}body.light-mode input,body.light-mode select,body.light-mode textarea{background: white;color: #1e293b !important;border-color: #e2e8f0}body.light-mode select option{background: white;color: #1e293b}body.light-mode input:focus,body.light-mode select:focus,body.light-mode textarea:focus{background: white;border-color: var(--accent-primary)}.js-bank-account-search.is-enhanced{display: none !important}.bank-account-combobox{position: relative;width: 100%}.bank-account-combobox__trigger{width: 100%;min-height: 54px;border-radius: 16px;border: 1px solid var(--border-color);background: var(--bg-card) !important;color: var(--text-primary) !important;padding: 12px 14px;display: flex;align-items: center;justify-content: space-between;gap: 12px;text-align: left;cursor: pointer;transition: border-color 0.2s ease,box-shadow 0.2s ease,background 0.2s ease,transform 0.2s ease}.bank-account-combobox__trigger:hover{border-color: rgba(99,102,241,0.45);background: #1d2b4d !important}.bank-account-combobox__trigger:focus-visible,.bank-account-combobox.is-open .bank-account-combobox__trigger{outline: none;border-color: var(--accent-primary);box-shadow: 0 0 0 3px rgba(99,102,241,0.18)}.bank-account-combobox__summary{min-width: 0;flex: 1}.bank-account-combobox__title-row{display: flex;align-items: center;gap: 8px;min-width: 0}.bank-account-combobox__title{color: var(--text-primary);font-size: 0.95rem;font-weight: 700;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.bank-account-combobox__badge{flex-shrink: 0;padding: 3px 8px;border-radius: 999px;background: rgba(99,102,241,0.12);color: var(--accent-primary);font-size: 0.72rem;font-weight: 700}.bank-account-combobox__subtitle{margin-top: 4px;color: var(--text-secondary);font-size: 0.8rem;line-height: 1.4;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.bank-account-combobox__trigger-side{display: flex;align-items: center;gap: 10px;flex-shrink: 0}.bank-account-combobox__count{color: var(--text-secondary);font-size: 0.78rem;font-weight: 600}.bank-account-combobox__chevron{color: var(--text-secondary);font-size: 0.95rem;transition: transform 0.2s ease,color 0.2s ease}.bank-account-combobox.is-open .bank-account-combobox__chevron{transform: rotate(180deg);color: var(--accent-primary)}.bank-account-combobox__panel{position: absolute;top: calc(100% + 8px);left: 0;right: 0;z-index: 1300;border: 1px solid var(--border-color);border-radius: 18px;background: var(--bg-card) !important;opacity: 1 !important;backdrop-filter: none !important;-webkit-backdrop-filter: none !important;background-image: none !important;overflow: hidden;isolation: isolate;box-shadow: 0 20px 48px rgba(0,0,0,0.24);padding: 12px}.bank-account-combobox__search-wrap{position: sticky;top: 0;z-index: 2;background: var(--bg-card) !important;opacity: 1 !important;backdrop-filter: none !important;-webkit-backdrop-filter: none !important;padding-bottom: 8px}.bank-account-combobox__search{width: 100%;border-radius: 14px;border: 1px solid var(--border-color);background: #101a33 !important;color: var(--text-primary) !important;padding: 10px 12px;font-size: 0.92rem}.bank-account-combobox__search:focus{outline: none;border-color: var(--accent-primary);box-shadow: 0 0 0 3px rgba(99,102,241,0.16)}.bank-account-combobox__search::placeholder{color: var(--text-secondary)}.bank-account-combobox__status{margin: 2px 2px 10px;background: var(--bg-card) !important;color: var(--text-secondary);font-size: 0.78rem;line-height: 1.5}.bank-account-combobox__list{display: flex;flex-direction: column;gap: 6px;max-height: 320px;overflow-y: auto;background: var(--bg-card) !important;opacity: 1 !important;padding-right: 2px}.bank-account-combobox__option{width: 100%;border: 1px solid transparent;border-radius: 14px;background: #16213e !important;color: var(--text-primary) !important;padding: 10px 12px;display: flex;align-items: flex-start;justify-content: space-between;gap: 12px;text-align: left;cursor: pointer;transition: background 0.18s ease,border-color 0.18s ease,transform 0.18s ease}.bank-account-combobox__option:hover,.bank-account-combobox__option:focus-visible{outline: none;background: #1f2f57 !important;border-color: rgba(99,102,241,0.22)}.bank-account-combobox__option.is-selected{background: #243663 !important;border-color: rgba(99,102,241,0.32)}.bank-account-combobox__option-main{min-width: 0;flex: 1}.bank-account-combobox__option-title{color: var(--text-primary) !important;font-size: 0.9rem;font-weight: 700;line-height: 1.4;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.bank-account-combobox__option-subtitle{margin-top: 3px;color: var(--text-secondary) !important;font-size: 0.78rem;line-height: 1.5;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.bank-account-combobox__option-check{flex-shrink: 0;color: var(--accent-primary);font-size: 0.76rem;font-weight: 700;align-self: center}.bank-account-combobox__empty{border-radius: 14px;border: 1px dashed var(--border-color);background: var(--bg-card) !important;padding: 14px 12px;text-align: center;color: var(--text-secondary);font-size: 0.84rem;line-height: 1.6}body.light-mode .bank-account-combobox__trigger{background: #ffffff !important;color: #1e293b !important}body.light-mode .bank-account-combobox__trigger:hover{background: #f8fafc !important}body.light-mode .bank-account-combobox__panel{background: #ffffff !important;opacity: 1 !important;box-shadow: 0 20px 48px rgba(15,23,42,0.12)}body.light-mode .bank-account-combobox__search-wrap{background: #ffffff !important}body.light-mode .bank-account-combobox__search{background: #ffffff !important;color: #1e293b !important;border-color: #e2e8f0}body.light-mode .bank-account-combobox__option{background: #ffffff !important;color: #1e293b !important}body.light-mode .bank-account-combobox__option:hover,body.light-mode .bank-account-combobox__option:focus-visible{background: #f8fafc !important}body.light-mode .bank-account-combobox__option.is-selected{background: #eef2ff !important}body.light-mode .bank-account-combobox__status,body.light-mode .bank-account-combobox__list,body.light-mode .bank-account-combobox__empty{background: #ffffff !important}@media (max-width: 768px){.bank-account-combobox__panel{padding: 10px;border-radius: 16px}.bank-account-combobox__list{max-height: min(55vh,320px)}.bank-account-combobox__trigger{min-height: 52px}.bank-account-combobox__subtitle,.bank-account-combobox__option-subtitle{white-space: normal;overflow: visible;text-overflow: clip}}.border-gray-200,.border-gray-300{border-color: var(--border-color) !important}table{color: var(--text-primary)}th{background: rgba(99,102,241,0.15);color: var(--text-primary) !important;font-weight: 600}td{color: var(--text-primary)}tr:hover{background: rgba(99,102,241,0.05)}tbody tr{border-bottom: 1px solid var(--border-color)}.mobile-menu-toggle{display: none;position: fixed;top: 20px;left: 20px;width: 48px;height: 48px;border-radius: 12px;background: var(--bg-card);border: 1px solid var(--border-color);cursor: grab;align-items: center;justify-content: center;font-size: 24px;box-shadow: 0 4px 12px rgba(0,0,0,0.3);transition: all 0.3s ease;z-index: 1001;user-select: none;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;touch-action: none}.mobile-menu-toggle:active{cursor: grabbing;transform: scale(1.05);box-shadow: 0 8px 20px rgba(99,102,241,0.4)}@media (max-width: 768px){.mobile-menu-toggle{display: flex}}@media (max-width: 640px){.container{padding-left: 1rem;padding-right: 1rem}.glass-white{padding: 1.5rem !important}}input[type="checkbox"],input[type="radio"]{accent-color: var(--accent-primary);cursor: pointer}@media (max-width: 768px){.responsive-table{display: block;overflow-x: auto;-webkit-overflow-scrolling: touch;border-radius: 12px}.responsive-table table{min-width: 100%;font-size: 14px}.responsive-table th,.responsive-table td{padding: 8px !important;white-space: nowrap}.table-card-view{display: none}}@media (max-width: 640px){.responsive-table table{font-size: 12px}.responsive-table th,.responsive-table td{padding: 6px !important}}.flatpickr-calendar{background: #16213e !important;border: 1px solid rgba(255,255,255,0.1) !important;box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;border-radius: 12px !important;font-family: inherit !important}.flatpickr-months{background: #16213e !important}.flatpickr-month,.flatpickr-current-month,.flatpickr-current-month .flatpickr-monthDropdown-months{background: #16213e !important;color: #e4e4e7 !important}.flatpickr-current-month input.cur-year{background: #16213e !important;color: #e4e4e7 !important}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{fill: #e4e4e7 !important}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{fill: #6366f1 !important}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill: #6366f1 !important}span.flatpickr-weekday{background: #16213e !important;color: #a1a1aa !important}.flatpickr-day{color: #e4e4e7 !important;border: none !important}.flatpickr-day:hover{background: rgba(99,102,241,0.2) !important;border: none !important}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background: #6366f1 !important;border-color: #6366f1 !important;color: white !important}.flatpickr-day.today{border: 2px solid #10b981 !important;background: rgba(16,185,129,0.1) !important;color: #10b981 !important}.flatpickr-day.today:hover{background: rgba(16,185,129,0.2) !important;border-color: #10b981 !important}.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color: #6b7280 !important}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{color: #4b5563 !important;cursor: not-allowed !important}.flatpickr-monthDropdown-months{background: #16213e !important;color: #e4e4e7 !important}.flatpickr-monthDropdown-months option{background: #16213e !important;color: #e4e4e7 !important}.flatpickr-input[readonly]{cursor: pointer !important}input.flatpickr-input.active{border-color: var(--accent-primary) !important}.flatpickr-period-note{padding: 10px 14px 0;color: var(--text-secondary);font-size: 12px;line-height: 1.5}.flatpickr-calendar.flatpickr-mode-weekly,.flatpickr-calendar.flatpickr-mode-monthly,.flatpickr-calendar.flatpickr-mode-yearly{width: min(348px,calc(100vw - 24px)) !important;min-width: min(348px,calc(100vw - 24px)) !important;max-width: calc(100vw - 24px) !important;box-sizing: border-box}.flatpickr-calendar.flatpickr-mode-weekly .flatpickr-day.is-week-selected{background: rgba(99,102,241,0.22) !important;border-color: rgba(99,102,241,0.22) !important;color: #ffffff !important;border-radius: 0 !important}.flatpickr-calendar.flatpickr-mode-weekly .flatpickr-day.is-week-start{border-top-left-radius: 999px !important;border-bottom-left-radius: 999px !important}.flatpickr-calendar.flatpickr-mode-weekly .flatpickr-day.is-week-end{border-top-right-radius: 999px !important;border-bottom-right-radius: 999px !important}.flatpickr-calendar.flatpickr-mode-monthly .flatpickr-months,.flatpickr-calendar.flatpickr-mode-monthly .flatpickr-innerContainer,.flatpickr-calendar.flatpickr-mode-yearly .flatpickr-months,.flatpickr-calendar.flatpickr-mode-yearly .flatpickr-innerContainer{display: none !important}.flatpickr-period-panel{padding: 12px 14px 14px;width: 100%;max-width: 100%;box-sizing: border-box;background: transparent}.flatpickr-period-toolbar{display: grid;grid-template-columns: 36px 1fr 36px;align-items: center;gap: 10px;margin-bottom: 12px}.flatpickr-period-title{color: var(--text-primary);text-align: center;font-size: 14px;font-weight: 700}.flatpickr-period-nav{width: 36px;height: 36px;border: 1px solid var(--border-color);border-radius: 10px;background: rgba(99,102,241,0.12);color: var(--text-primary);cursor: pointer;font-size: 20px;line-height: 1}.flatpickr-period-nav:hover{background: rgba(99,102,241,0.18);border-color: rgba(99,102,241,0.3)}.flatpickr-period-grid{display: grid;gap: 10px;min-width: 0}.flatpickr-period-grid-months{grid-template-columns: repeat(3,minmax(0,1fr))}.flatpickr-period-grid-years{grid-template-columns: repeat(4,minmax(0,1fr))}.flatpickr-period-grid-weeks{grid-template-columns: 1fr;gap: 8px;max-height: 320px;overflow-y: auto;padding-right: 2px}.flatpickr-period-cell{min-height: 44px;border: 1px solid var(--border-color);border-radius: 12px;background: rgba(255,255,255,0.04);color: var(--text-primary);cursor: pointer;font-size: 13px;font-weight: 700}.flatpickr-period-cell:hover{border-color: rgba(99,102,241,0.44);background: rgba(99,102,241,0.12);color: var(--text-primary)}.flatpickr-period-cell.is-selected{border-color: #6366f1;background: #6366f1;color: #ffffff;box-shadow: 0 10px 24px -16px rgba(99,102,241,0.8)}.flatpickr-week-option{width: 100%;min-height: 62px;display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 12px 14px;border: 1px solid var(--border-color);border-radius: 14px;background: rgba(255,255,255,0.04);color: var(--text-primary);cursor: pointer;text-align: left;transition: border-color 0.18s ease,background 0.18s ease,box-shadow 0.18s ease}.flatpickr-week-option:hover{border-color: rgba(99,102,241,0.44);background: rgba(99,102,241,0.12)}.flatpickr-week-option.is-selected{border-color: #6366f1;background: rgba(99,102,241,0.28);box-shadow: 0 10px 24px -16px rgba(99,102,241,0.8)}.flatpickr-week-option-main{display: flex;flex-direction: column;gap: 4px;min-width: 0;flex: 1}.flatpickr-week-option-badge{color: var(--text-primary);font-size: 13px;font-weight: 700;line-height: 1.4}.flatpickr-week-option-range{color: var(--text-secondary);font-size: 12px;line-height: 1.5;word-break: break-word}.flatpickr-week-option-meta{color: var(--accent-primary);font-size: 11px;font-weight: 700;white-space: nowrap;align-self: flex-start;padding-top: 2px}@media (max-width: 768px){.flatpickr-calendar{max-width: calc(100vw - 24px) !important;box-sizing: border-box}.flatpickr-rContainer,.flatpickr-days,.dayContainer{max-width: 100%;box-sizing: border-box}.flatpickr-calendar.flatpickr-mode-weekly,.flatpickr-calendar.flatpickr-mode-monthly,.flatpickr-calendar.flatpickr-mode-yearly{width: calc(100vw - 24px) !important;min-width: calc(100vw - 24px) !important;max-width: calc(100vw - 24px) !important}.flatpickr-calendar.flatpickr-mobile-clamped.flatpickr-mode-weekly,.flatpickr-calendar.flatpickr-mobile-clamped.flatpickr-mode-monthly,.flatpickr-calendar.flatpickr-mobile-clamped.flatpickr-mode-yearly{position: fixed !important;left: 50% !important;right: auto !important;width: min(348px,calc(100vw - 24px)) !important;min-width: 0 !important;max-width: calc(100vw - 24px) !important;margin: 0 !important;transform: translateX(-50%) !important}.flatpickr-period-note{padding: 10px 12px 0;font-size: 11px}.flatpickr-period-panel{padding: 10px 12px 12px}.flatpickr-period-toolbar{grid-template-columns: 34px 1fr 34px;gap: 8px;margin-bottom: 10px}.flatpickr-period-title{font-size: 13px}.flatpickr-period-nav{width: 34px;height: 34px}.flatpickr-period-grid{gap: 8px}.flatpickr-period-grid-years{grid-template-columns: repeat(3,minmax(0,1fr))}.flatpickr-period-grid-weeks{gap: 6px;max-height: min(50vh,320px);padding-right: 0}.flatpickr-period-cell{min-height: 42px;font-size: 12px}.flatpickr-week-option{min-height: 0;align-items: flex-start;flex-direction: column;gap: 6px;padding: 10px 12px;border-radius: 12px}.flatpickr-week-option-main{gap: 3px;width: 100%}.flatpickr-week-option-badge{font-size: 12px}.flatpickr-week-option-range{font-size: 11px;line-height: 1.45}.flatpickr-week-option-meta{font-size: 10px;white-space: normal;padding-top: 0}}*{scrollbar-width: thin;scrollbar-color: var(--accent-primary) transparent}*::-webkit-scrollbar{width: 8px;height: 8px}*::-webkit-scrollbar-track{background: transparent}*::-webkit-scrollbar-thumb{background: var(--accent-primary);border-radius: 4px}*::-webkit-scrollbar-thumb:hover{background: var(--accent-secondary)}#preloader{position: fixed;top: 0;left: 0;width: 100vw;max-width: 100vw;height: 3px;z-index: 99999;pointer-events: none;overflow: hidden;-webkit-transform: translateZ(0);transform: translateZ(0);contain: layout style paint}#preloader .loading-bar{position: absolute;top: 0;left: 0;height: 100%;width: 0;background: linear-gradient(90deg,#6366f1 0%,#818cf8 50%,#6366f1 100%);background-size: 200% 100%;animation: preloader-gradient 2s linear infinite,preloader-progress 1.2s ease-out forwards;will-change: width;-webkit-transform: translateZ(0);transform: translateZ(0);contain: layout style paint}#preloader.loaded{opacity: 0;transition: opacity 0.2s ease-out}#preloader.loaded .loading-bar{width: 100% !important;animation: preloader-gradient 2s linear infinite;transition: width 0.2s ease-out}@keyframes preloader-gradient{0%{background-position: 0% 50%}50%{background-position: 100% 50%}100%{background-position: 0% 50%}}@keyframes preloader-progress{0%{width: 0%}12.5%{width: 10%}25%{width: 20%}37.5%{width: 30%}50%{width: 40%}62.5%{width: 50%}75%{width: 60%}87.5%{width: 70%}100%{width: 80%}}body:not(.page-loaded)>*:not(#preloader):not(.mobile-menu-toggle):not(.sidebar-overlay){opacity: 1 !important;visibility: visible !important}html{-webkit-overflow-scrolling: touch;scroll-behavior: smooth}a,button,input,select,textarea,label{-webkit-tap-highlight-color: rgba(99,102,241,0.2);touch-action: manipulation}button,.btn-primary,.btn-secondary,.nav-item{-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none}@media (max-width: 768px){.glass,.glass-white{backdrop-filter: none !important;-webkit-backdrop-filter: none !important}}@media (prefers-reduced-motion: reduce),(max-width: 768px){*,*::before,*::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important}.sidebar,.sidebar-overlay,.sidebar *,.sidebar-overlay *{animation-duration: 0.3s !important;transition-duration: 0.3s !important}}body[data-platform="android"]{-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-rendering: optimizeSpeed}body[data-platform="android"] .glass,body[data-platform="android"] .glass-white{backdrop-filter: none !important;-webkit-backdrop-filter: none !important;background: var(--bg-card) !important}body[data-platform="android"] .card:hover{transform: none !important;box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important}body[data-platform="android"] .btn-primary:hover{transform: none !important}body[data-platform="android"] .nav-item:hover{transform: none !important}body[data-is-mobile="true"]{-webkit-transform: translateZ(0);transform: translateZ(0);-webkit-backface-visibility: hidden;backface-visibility: hidden;-webkit-perspective: 1000;perspective: 1000}body[data-is-mobile="true"] *{transition-property: opacity,transform !important}body[data-is-mobile="true"] .card,body[data-is-mobile="true"] .glass,body[data-is-mobile="true"] .glass-white{-webkit-transform: translateZ(0);transform: translateZ(0);will-change: auto !important}@media (hover: none) and (pointer: coarse){.card:hover,.nav-item:hover,.btn-primary:hover,.btn-secondary:hover{transform: none !important;box-shadow: inherit !important}}@media (max-width: 768px){*{-webkit-overflow-scrolling: touch;scroll-behavior: auto}.glass,.glass-white,.card{box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important}.card,.glass,.glass-white,.btn-primary,.btn-secondary{border-radius: 8px !important}body{background: var(--bg-primary) !important}.btn-primary{background: var(--accent-primary) !important}}@media (max-width: 480px){*{transition: none !important;animation: none !important}.card,.glass,.glass-white{box-shadow: 0 1px 4px rgba(0,0,0,0.1) !important}}#pwa-install-btn{position: fixed;bottom: 20px;right: 20px;padding: 12px 24px;background: linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color: white;border: none;border-radius: 12px;box-shadow: 0 4px 12px rgba(99,102,241,0.4);cursor: pointer;font-weight: 600;z-index: 1102;display: none;align-items: center;gap: 8px;max-width: calc(100vw - 32px);white-space: nowrap;transition: all 0.3s ease}#pwa-install-btn:hover{transform: translateY(-2px);box-shadow: 0 8px 20px rgba(99,102,241,0.5)}#pwa-install-btn.show{display: flex}@media (max-width: 768px){#pwa-install-btn{left: 50%;right: auto;bottom: calc(88px + env(safe-area-inset-bottom,0px));width: min(320px,calc(100vw - 32px));min-height: 52px;justify-content: center;padding: 12px 18px;border-radius: 16px;transform: translateX(-50%);box-shadow: 0 14px 32px rgba(15,23,42,0.36),0 8px 22px rgba(99,102,241,0.34)}#pwa-install-btn:hover{transform: translateX(-50%)}#pwa-install-btn:active{transform: translateX(-50%) scale(0.98)}#pwa-install-btn span:last-child{min-width: 0;overflow: hidden;text-overflow: ellipsis}}@media (min-width: 769px) and (max-width: 1199px){html.device-ipad .sidebar,html.device-ipad body.business-ledger-page .sidebar{position: fixed !important;left: -100% !important;top: 0 !important;width: 280px !important;height: 100vh !important;height: 100dvh !important;max-height: 100vh !important;max-height: 100dvh !important;z-index: 1000 !important;overflow-x: hidden;overflow-y: auto;display: block !important;padding-bottom: env(safe-area-inset-bottom,0px)}html.device-ipad .sidebar.active{left: 0 !important}html.device-ipad .sidebar-overlay{display: none;position: fixed;inset: 0;background: rgba(0,0,0,0.5);z-index: 999}html.device-ipad .sidebar-overlay.active{display: block}html.device-ipad .mobile-menu-toggle{position: fixed !important;top: max(20px,env(safe-area-inset-top,0px)) !important;left: 20px !important;display: flex !important;cursor: grab;z-index: 1001}html.device-ipad body.business-ledger-page .ledger-shell,html.device-ipad body.business-ledger-page .ledger-data-section,html.device-ipad body.business-ledger-page .ledger-table-card,html.device-ipad body.business-ledger-page .ledger-panel-grid{min-width: 0;max-width: 100%}html.device-ipad body.business-ledger-page .ledger-table-wrap{max-width: 100%;overflow-x: auto;overscroll-behavior-inline: contain;-webkit-overflow-scrolling: touch}html.device-ipad body.business-ledger-page .ledger-table-controls,html.device-ipad body.business-ledger-page .ledger-table-controls:has([name="movements_sort"]),html.device-ipad body.business-ledger-page .ledger-shell:has(.ledger-work-station) .ledger-table-controls{grid-template-columns: repeat(2,minmax(0,1fr))}html.device-ipad body.business-ledger-page .ledger-table-search,html.device-ipad body.business-ledger-page .ledger-table-controls__actions{grid-column: 1 / -1}html.device-ipad body.budgets-page .budget-list-grid{grid-template-columns: minmax(0,1fr) !important}html.device-ipad body.budgets-page .budget-card{padding: 24px}html.device-ipad body.budgets-page .budget-summary{grid-template-columns: repeat(3,minmax(0,1fr));gap: 12px}html.device-ipad body.budgets-page .summary-item{min-width: 0;padding: 14px 10px}html.device-ipad body.budgets-page .summary-label{line-height: 1.35;overflow-wrap: anywhere}html.device-ipad body.budgets-page .budget-actions{flex-wrap: wrap}html.device-ipad body.bank-accounts-page .bank-table-view{display: none !important}html.device-ipad body.bank-accounts-page .bank-card-view{display: block !important}html.device-ipad body.categories-page .category-list-grid{grid-template-columns: repeat(2,minmax(0,1fr)) !important}html.device-ipad body.categories-page .category-card{min-width: 0;min-height: 96px}html.device-ipad body.categories-page .category-card .font-semibold.truncate{white-space: normal;overflow: visible;text-overflow: clip;overflow-wrap: anywhere}html.device-ipad body.categories-page .category-card>.flex.space-x-1{opacity: 1}}