.form-button{flex:1;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-size:1rem;display:flex;align-items:center;justify-content:center;min-height:44px}.form-button-primary{background:#4dbf5d;color:#fff;border:1px solid transparent}.form-button-primary:hover:not(.form-button-disabled){background:#45a855;transform:translateY(-1px);box-shadow:0 4px 12px #4dbf5d4d}.form-button-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.form-button-secondary:hover:not(.form-button-disabled){background:#fff3;transform:translateY(-1px);box-shadow:0 4px 12px #ffffff1a}.form-button-custom{border:1px solid transparent;background:#954cbf;color:#fff}.form-button-custom:hover:not(.form-button-disabled){background:#4dbf5d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.form-button-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.form-button:active:not(.form-button-disabled){transform:translateY(0)}.form-button-loading-state{position:relative;overflow:hidden}.form-button-loading-state:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.form-button-loading{display:flex;align-items:center;justify-content:center;height:100%}.loading-wave{display:flex;gap:.3rem;align-items:center}.loading-dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor;animation:loadingWave 1.4s ease-in-out infinite;transform-origin:center}.loading-dot:nth-child(1){animation-delay:0s}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes loadingWave{0%,60%,to{transform:scale(1);opacity:.6}30%{transform:scale(1.4);opacity:1}}.form-button-primary.form-button-loading-state .loading-dot{background:#fff;box-shadow:0 0 8px #ffffff4d}.form-button-primary.form-button-loading-state .loading-dot:nth-child(2){animation-delay:.15s}.form-button-primary.form-button-loading-state .loading-dot:nth-child(3){animation-delay:.3s}.form-button-secondary.form-button-loading-state .loading-dot{background:#fffc;animation:loadingPulse 1.2s ease-in-out infinite}@keyframes loadingPulse{0%,to{transform:scale(.8);opacity:.4}50%{transform:scale(1.2);opacity:1;box-shadow:0 0 12px #fff6}}.form-button-loading-state:hover{transform:none!important;box-shadow:none!important}.form-button-primary.form-button-loading-state:hover{background:#4dbf5d!important;box-shadow:0 4px 15px #4dbf5d4d!important}.form-button-secondary.form-button-loading-state:hover{background:#ffffff1a!important;transform:none!important}@media (max-width: 768px){.form-button{padding:1rem;min-height:48px}.loading-dot{width:.4rem;height:.4rem}}.center-popup-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.center-popup-container{background:var(--clr-surface-2-mid-gray);border:1px solid var(--clr-border-divider);border-radius:16px;min-width:400px;max-width:75vw;width:100%;max-height:80vh;box-shadow:0 4px 12px #0000001a;animation:centerPopupAppear .3s ease-out;display:flex;flex-direction:column;overflow:visible}@keyframes centerPopupAppear{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.center-popup-small{max-width:500px;min-width:350px}.center-popup-medium{max-width:600px;min-width:400px;min-height:600px}.center-popup-large{max-width:75vw;min-width:800px}.center-popup-fit-content{width:fit-content;min-width:unset;max-width:90vw;max-height:90vh}.center-popup-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--clr-border-divider);background-color:var(--clr-surface-1-dark-gray)}.center-popup-title{color:var(--clr-text-primary);font-size:1.5rem;font-weight:600;margin:0}.center-popup-close-button{background:transparent;border:none;border-radius:8px;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.center-popup-close-button:hover{background:var(--clr-surface-3-light-gray)}.center-popup-close-button svg{color:var(--clr-text-secondary);transition:color .2s ease}.center-popup-close-button:hover svg{color:var(--clr-text-primary)}.center-popup-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;flex:1;overflow:visible;min-height:0}.center-popup-actions{display:flex;gap:1rem;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--clr-border-divider)}@media (max-width: 768px){.center-popup-overlay{padding:.5rem}.center-popup-container{min-width:unset;max-width:unset;width:100%;max-height:90vh;border-radius:12px}.center-popup-small,.center-popup-medium,.center-popup-large{min-width:unset;max-width:unset;width:100%}.center-popup-fit-content{min-width:unset;max-width:95vw;max-height:95vh;width:fit-content}.center-popup-header{padding:1rem 1rem .75rem}.center-popup-title{font-size:1.25rem}.center-popup-body{padding:1rem;gap:1rem;overflow:hidden}.center-popup-actions{flex-direction:column;gap:.75rem;padding:1rem}}.basic-dropdown-container{position:relative;display:inline-block}.basic-dropdown-trigger{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s ease,transform .1s ease}.basic-dropdown-trigger.no-style{padding:0;border-radius:0;background:transparent;transition:none}.basic-dropdown-trigger:hover{background-color:#ffffff1a;transform:scale(1.02)}.basic-dropdown-trigger.no-style:hover{background-color:transparent;transform:none}.basic-dropdown-trigger:active{transform:scale(.98)}.basic-dropdown-trigger.disabled{cursor:not-allowed;opacity:.6}.basic-dropdown-trigger.disabled:hover{background-color:transparent;transform:none}.basic-dropdown-arrow{display:flex;align-items:center;color:#fff;transition:transform .2s ease}.basic-dropdown-name{color:#fff;font-size:1.1rem;font-weight:600;white-space:nowrap}.basic-dropdown-loading{color:#fff;padding:.5rem;font-style:italic}.basic-dropdown-dropdown{position:absolute;left:0;min-width:200px;background-color:#000000e6;border:1px solid rgba(255,255,255,.2);border-radius:6px;box-shadow:0 4px 12px #0000004d;z-index:1100;margin-top:.25rem;max-height:300px;overflow-y:auto}.basic-dropdown-header{padding:.5rem;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;background-color:#000000f2;z-index:1}.basic-dropdown-header input{width:100%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:.5rem .75rem;color:#fff}.basic-dropdown-header input::placeholder{color:#fff9}.basic-dropdown-dropdown.placement-bottom-end{left:auto;right:0}.basic-dropdown-dropdown.placement-bottom-start,.basic-dropdown-dropdown.placement-bottom-end{top:100%}.basic-dropdown-dropdown.placement-top-start,.basic-dropdown-dropdown.placement-top-end{bottom:100%;margin-bottom:.25rem}.basic-dropdown-dropdown.placement-top-end{left:auto;right:0}.basic-dropdown-option{padding:.75rem 1rem;color:#fff;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(255,255,255,.1)}.basic-dropdown-option-content{display:flex;align-items:center;gap:.75rem}.basic-dropdown-option:last-child{border-bottom:none}.basic-dropdown-option:hover{background-color:#ffffff1a}.basic-dropdown-option.active{background-color:#4dbf5d33;border-left:3px solid #4DBF5D}.basic-dropdown-option.active:hover{background-color:#4dbf5d4d}@media (max-width: 768px){.basic-dropdown-dropdown{min-width:250px;left:50%;transform:translate(-50%);right:auto}.basic-dropdown-name{font-size:1rem}}@media (max-width: 480px){.basic-dropdown-dropdown{min-width:calc(100vw - 2rem);left:50%;transform:translate(-50%);max-width:300px}}.hover-dropdown-wrapper{position:relative;display:inline-block}.explanation-cloud-container{position:relative;display:inline-flex;align-items:center;margin-left:.5rem}.explanation-cloud-trigger{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;cursor:help;transition:all .2s ease}.explanation-cloud-trigger:hover{background:#4dbf5d33;border-color:#4dbf5d66;transform:scale(1.1)}.explanation-cloud-trigger svg{color:#ffffffb3;transition:color .2s ease}.explanation-cloud-trigger:hover svg{color:#4dbf5d}.explanation-cloud-tooltip{position:fixed;z-index:1000;transition:opacity .3s ease,transform .3s ease}.explanation-cloud-content{background:#141414f2;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.75rem 1rem;color:#fff;font-size:.85rem;line-height:1.4;white-space:normal;min-width:200px;max-width:320px;width:max-content;box-shadow:0 0 20px #4dbf5d33,0 10px 30px #0000004d}.explanation-cloud-top:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#141414f2}.explanation-cloud-bottom:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#141414f2}.explanation-cloud-left:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#141414f2}.explanation-cloud-right:after{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#141414f2}@media (max-width: 768px){.explanation-cloud-content{min-width:180px;max-width:280px;font-size:.8rem;padding:.6rem .8rem}.explanation-cloud-trigger{width:18px;height:18px}.explanation-cloud-trigger svg{width:14px;height:14px}}.file-upload-container{border:2px dashed #ffffff;border-radius:16px;padding:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;cursor:pointer;transition:all .2s ease;background-color:transparent;min-height:160px;flex:1;overflow:hidden}.file-upload-container.dragging{border-color:#ffffff80;background-color:#ffffff0d}.file-upload-text{color:#fff;font-size:16px}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;width:100%}.file-card{position:relative;background-color:#ffffff1a;border-radius:8px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px}.file-preview-image{width:100%;height:100px;object-fit:cover;border-radius:4px}.file-preview-icon{width:100%;height:100px;display:flex;align-items:center;justify-content:center}.file-name{color:#fff;font-size:14px;text-align:center;word-break:break-word;margin:0}.remove-file-button{position:absolute;top:8px;right:8px;background:#00000080;border:none;border-radius:50%;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.hidden{display:none}.file-upload-wrapper{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.submit-container{display:flex;justify-content:center;margin-top:20px;width:100%;flex-shrink:0}.submit-button{padding:12px 24px;font-size:16px;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;font-weight:600;min-width:120px}.submit-button:disabled{background-color:#ffffff1a;color:#ffffff4d;cursor:not-allowed}.submit-button:not(:disabled){background-color:#fff;color:#000}.submit-button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.error-message{color:#ff6b6b;text-align:center;font-size:.9rem;margin-top:1rem}@media (max-width: 768px){.file-upload-container{padding:20px;min-height:120px;gap:12px}.file-upload-text{font-size:14px}.submit-container{margin-top:15px}.submit-button{padding:10px 20px;font-size:14px;min-width:100px}}@media (max-width: 480px){.file-upload-container{padding:15px;min-height:100px;gap:8px}.file-upload-text{font-size:13px}.submit-container{margin-top:10px}.submit-button{padding:8px 16px;font-size:13px}}.date-filter-menu{background-color:#ffffff1a;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid var(--border-light)}.date-filter-content{display:flex;flex-direction:column;gap:1.5rem}.date-filter-preset-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.preset-button{background:none;border:1px solid var(--border-medium);color:var(--text-primary);padding:.75rem 1.5rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.preset-button:hover{background-color:var(--background-overlay);border-color:var(--border-strong);transform:translateY(-1px)}.preset-button:active{transform:translateY(0)}.date-filter-inputs{display:flex;gap:2rem;align-items:end}.date-input-group{display:flex;flex-direction:column;gap:.5rem}.date-input-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.date-input{background-color:#ffffff1a;border:1px solid var(--border-medium);border-radius:6px;padding:.75rem;color:var(--text-primary);font-size:.9rem;font-family:inherit;transition:all .2s ease;min-width:150px}.date-input:focus{outline:none;border-color:var(--brand-primary);background-color:#ffffff26}.date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}@media (min-width: 769px){.date-filter-content{flex-direction:row;justify-content:space-between;align-items:center;gap:2rem}.date-filter-inputs{flex-shrink:0}.date-filter-preset-buttons{justify-content:flex-end;flex:1}}@media (max-width: 768px){.date-filter-menu{padding:1rem;margin-bottom:1.5rem}.date-filter-preset-buttons{gap:.5rem}.preset-button{padding:.6rem 1rem;font-size:.8rem}.date-filter-inputs{flex-direction:column;gap:1rem;align-items:stretch}.date-input{min-width:auto;width:100%}}@media (max-width: 480px){.date-filter-preset-buttons{justify-content:center}.preset-button{flex:1;min-width:calc(50% - .25rem)}}.date-filter-menu.minimised{margin-bottom:1rem;padding:1rem 1.5rem}.date-filter-menu.minimised .date-filter-content{justify-content:flex-start}.date-filter-menu.minimised .date-filter-inputs{gap:1rem}.date-filter-menu.minimised .date-input{min-width:120px}@media (max-width: 768px){.date-filter-menu.minimised{padding:.75rem 1rem}.date-filter-menu.minimised .date-filter-inputs{gap:.75rem}.date-filter-menu.minimised .date-input{min-width:auto;font-size:.8rem;padding:.6rem}}.basic-list-item{background:#ffffff0d;border:1px solid var(--border-light);border-radius:12px;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.basic-list-item.clickable:hover{transform:translateY(-1px);background:#ffffff14;box-shadow:0 8px 32px #0006}.basic-list-item.clickable{cursor:pointer}@media (max-width: 768px){.basic-list-item{grid-template-columns:100px 1fr 100px;padding:.6rem .8rem}}.basic-list{display:flex;flex-direction:column;gap:.5rem}.list-right-detail-container{display:grid;grid-template-columns:1fr;gap:0;width:100%;height:100%;position:relative}.list-right-detail-container.dragging .vertical-resizer{background:var(--border)}.list-pane{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;min-width:0;border-right:1px solid var(--border-light)}.list-header{position:sticky;top:0;z-index:1;background:var(--background, #0b0b0b);padding-bottom:.5rem}.loading-state,.error-state,.empty-state,.loading-more,.end-of-list{padding:.75rem .5rem;color:var(--text-secondary, #bbb)}.infinite-scroll-sentinel{width:100%;height:1px}.vertical-resizer{width:6px;cursor:col-resize;background:var(--border-light);transition:background .2s ease}.detail-pane{position:relative;overflow:hidden;min-width:0;display:flex}.detail-close-rail{width:20px;display:flex;align-items:center;justify-content:center}.detail-close-button{padding:.5rem}.detail-close-button:hover{cursor:pointer;transform:scale(1.1)}.detail-content{flex:1;margin-left:1rem}.close-detail-button{position:absolute;top:8px;right:8px;border:1px solid var(--border-light);background:#ffffff0a;color:var(--text, #fff);border-radius:999px;width:28px;height:28px;line-height:24px;text-align:center;font-size:18px;transform:rotate(180deg);cursor:pointer;transition:transform .15s ease,background .2s ease}.close-detail-button:hover{background:#ffffff14}@media (max-width: 900px){.list-right-detail-container.has-selection{grid-template-columns:45% 6px 55%!important}}.user-icon-container{position:relative}.user-icon{width:2rem;height:2rem;color:var(--text-primary)}.user-icon-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.user-icon-button:hover .user-icon{color:var(--text-primary);transform:scale(1.05)}@media (max-width: 768px){.user-icon{width:2rem;height:2rem}.user-icon-button{padding:.5rem;min-width:44px;min-height:44px}}@media (max-width: 480px){.user-icon{width:1.75rem;height:1.75rem}.user-icon-button{padding:.625rem;min-width:44px;min-height:44px}.user-dropdown{min-width:160px;right:-15px}}.sidebar{position:fixed;top:64px;left:0;width:160px;height:calc(100vh - 64px);background:var(--background-primary);border-right:1px solid var(--text-secondary);transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:999;overflow-y:auto}.sidebar-open{transform:translate(0)}.sidebar-content{padding:1.5rem 0;height:100%;display:flex;flex-direction:column}.sidebar-user-section{padding:0 1.5rem 1.5rem;border-bottom:1px solid var(--border-divider);margin-bottom:1.5rem}.sidebar-user-info{display:flex;align-items:center;gap:.75rem}.sidebar-user-name{font-weight:600;color:var(--text-primary);font-size:1rem}.sidebar-nav{flex:1;padding:0 1rem}.sidebar-nav-item{display:flex;align-items:center;width:100%;padding:.75rem 1rem;margin-bottom:.25rem;background:none;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;text-align:left;font-size:.9rem}.sidebar-nav-item:hover{background:var(--background-overlay);color:var(--text-primary)}.sidebar-nav-item.active{background:#4dbf5d1a;color:var(--brand-primary)}.sidebar-nav-icon.active{color:var(--brand-primary)}.sidebar-nav-label.active{color:var(--brand-primary);font-weight:500}.sidebar-nav-icon{width:1.25rem;height:1.25rem;margin-right:.75rem;flex-shrink:0}.sidebar-nav-label{flex:1}@media (max-width: 768px){.sidebar{width:260px}}@media (max-width: 480px){.sidebar{width:240px}}.global-header{position:relative;height:100%}.global-header-content{height:100%;display:flex;justify-content:space-between;align-items:center}.global-header-left{display:flex;align-items:center;gap:1rem;min-width:64px}.menu-toggle-wrapper{position:relative}.global-header-right{height:100%;display:flex;align-items:center}.global-header-user{height:100%;display:flex;align-items:center;gap:1rem}.user-greeting{font-size:1rem;font-weight:500}.main-nav{display:flex;gap:3rem}.nav-item{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .2s ease,transform .2s ease;padding:.5rem 0;position:relative}.nav-item:hover{color:var(--text-primary);transform:translateY(-2px)}.header-actions{position:relative;display:flex;align-items:center;gap:1rem}.login-button,.signup-button{background:none;border:1px solid var(--border-medium);color:var(--text-secondary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.global-header.landing-page-header .login-button:hover{background-color:var(--background-overlay);border-color:var(--border-strong);color:var(--text-primary)}.primary-button.signup-button{padding:.6rem 1.2rem;font-size:.9rem}.menu-toggle-button{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;width:40px;height:40px}.menu-toggle-button:hover{background:var(--background-overlay);color:var(--text-primary)}.sidebar-hover-dropdown{position:absolute;top:100%;left:0;margin-top:.5rem;background:var(--backdrop-dark);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-light);border-radius:12px;box-shadow:0 8px 32px #0006;z-index:2000;width:160px;overflow:hidden}.sidebar-hover-dropdown .sidebar-nav-item.active{background:#4dbf5d1a;color:var(--brand-primary)}.sidebar-hover-dropdown .sidebar-nav-icon.active{color:var(--brand-primary)}.sidebar-hover-dropdown .sidebar-nav-label.active{color:var(--brand-primary);font-weight:500}.menu-toggle{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer}.mobile-dropdown-menu{position:absolute;top:100%;right:0;background-color:var(--background-primary);border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:1000;padding:.5rem 0;margin-top:.5rem}.mobile-dropdown-button{width:100%;background:none;border:none;color:var(--text-primary);padding:.75rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.9rem;transition:background-color .2s ease;text-align:left}.mobile-dropdown-button:hover{background-color:var(--background-overlay)}.mobile-dropdown-button.signup-dropdown-button{color:var(--primary-color);font-weight:500}.mobile-dropdown-button.signup-dropdown-button:hover{background-color:var(--primary-color-light)}@media (max-width: 768px){.main-nav{display:none;flex-direction:column;position:absolute;top:60px;left:0;right:0;background-color:var(--backdrop-dark);padding:2rem;gap:1.5rem}.main-nav.active{display:flex}.menu-toggle,.mobile-dropdown-menu{display:block}}@media (min-width: 769px){.mobile-dropdown-menu{display:none}}.global-layout-container{height:100vh}.global-layout-header{padding:.6rem;height:64px}.global-layout-content{height:calc(100vh - 64px);display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);margin-left:0;width:100%;overflow-x:hidden}.global-layout-content.content-shifted{margin-left:160px;width:calc(100% - 160px)}@media (max-width: 768px){.global-layout-content.content-shifted{margin-left:260px;width:calc(100% - 260px)}}@media (max-width: 480px){.global-layout-content.content-shifted{margin-left:240px;width:calc(100% - 240px)}}.bookkeeping-layout-navbar{position:relative;padding:1rem 0}.bookkeeping-nav-item{color:#fff;text-decoration:none;padding:.5rem 0;position:relative;font-weight:500;transition:color .2s ease}.bookkeeping-nav-item:hover{color:#f0f0f0;transform:scale(1.05)}.bookkeeping-nav-item.active{color:#fff}.bookkeeping-nav-item.active:after{content:"";position:absolute;bottom:-.5rem;left:0;right:0;height:3px;background-color:#22c55e;border-radius:2px}.mobile-nav-container{display:none;position:relative}.mobile-menu-toggle{background:none;border:none;color:#fff;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;margin-left:2rem;transition:all .2s ease}.mobile-menu-toggle:hover{background-color:#ffffff1a;border-radius:4px}.mobile-nav-dropdown{position:absolute;top:100%;left:0;right:0;background-color:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;margin:.5rem 2rem;padding:1rem 0;box-shadow:0 4px 20px #0000004d;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;z-index:1000}.mobile-nav-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.bookkeeping-nav-item.mobile{display:block;padding:1rem 2rem;border-bottom:1px solid rgba(255,255,255,.1);text-align:left}.bookkeeping-nav-item.mobile:last-child{border-bottom:none}.bookkeeping-nav-item.mobile:hover{background-color:#ffffff1a;transform:none}.bookkeeping-nav-item.mobile.active:after{display:none}.bookkeeping-nav-item.mobile.active{background-color:#22c55e33;border-left:4px solid #22c55e}.bookkeeping-layout-content{flex:1;overflow:auto;display:flex}@media (max-width: 768px){.desktop-nav{display:none}.mobile-nav-container{display:block}.bookkeeping-layout-navbar{padding:.5rem 0}}.bookkeeping-layout-container{height:100%;display:flex;flex-direction:column}.bookkeeping-navbar-content{display:flex;gap:3rem;padding:0 2rem}.landing-page-wrapper .global-header-content{background-color:transparent;position:absolute;top:0;left:0;right:0;z-index:1000;padding:1rem 2rem}.hero-section{display:flex;align-items:center;justify-content:center;padding:2rem 4rem;min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(77,191,93,.1),transparent 40%),var(--background-dark);overflow:hidden}.hero-content{max-width:600px;text-align:left;z-index:1;padding-left:2rem}.hero-headline{font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;background:-webkit-linear-gradient(45deg,#ffffff,#b8b8b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subheadline{font-size:1.125rem;color:var(--text-secondary);max-width:500px;margin:0 auto 2rem;line-height:1.6}.primary-button.hero-cta{padding:1rem 2rem;font-size:1rem;font-weight:600}.hero-image{max-width:100%;height:auto;border-radius:24px;box-shadow:0 20px 50px #00000080}@media (min-width: 992px){.hero-section{display:grid;grid-template-columns:1fr 1fr;gap:2rem;text-align:left}.hero-content{max-width:none;text-align:left}.hero-subheadline{margin:0 0 2rem}.hero-visual{perspective:1500px}.hero-image{transform:rotateY(-15deg) rotateX(5deg);transition:transform .3s ease}.hero-image:hover{transform:rotateY(0) rotateX(0) scale(1.05)}}@media (max-width: 768px){.hero-section{flex-direction:column;padding:4rem 2rem}.hero-content{text-align:center;padding-left:0;margin-bottom:3rem}.hero-headline{font-size:2.5rem}}.features-section{padding:6rem 2rem;background-color:#1a1a1a;text-align:center}.features-header{max-width:700px;margin:0 auto 4rem}.section-tag{display:inline-block;padding:.25rem .75rem;background-color:#4dbf5d1a;color:var(--brand-primary);border-radius:999px;font-size:.875rem;font-weight:600;margin-bottom:1rem}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.section-subtitle{font-size:1.125rem;color:var(--text-secondary);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background-color:var(--background-dark);padding:2.5rem 2rem;border-radius:16px;border:1px solid var(--border-light);text-align:left;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px #0003}.feature-icon{display:inline-flex;padding:.75rem;background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-hover) 100%);color:#fff;border-radius:12px;margin-bottom:1.5rem}.feature-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.feature-description{color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.features-section{padding:4rem 1rem}.section-title{font-size:2rem}}.showcase-section{padding:6rem 2rem;text-align:center}.showcase-content{max-width:700px;margin:0 auto 4rem}.showcase-visual{max-width:1000px;margin:0 auto}.showcase-image{width:100%;border-radius:16px;border:1px solid var(--border-light);box-shadow:0 20px 50px #0000004d}.testimonials-section{padding:6rem 2rem;background-color:#1a1a1a;text-align:center}.testimonials-header{max-width:700px;margin:0 auto 4rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.testimonial-card{background-color:var(--background-dark);padding:2.5rem;border-radius:16px;border:1px solid var(--border-light);display:flex;flex-direction:column;justify-content:space-between;text-align:left}.testimonial-quote{font-size:1.125rem;line-height:1.6;margin-bottom:2rem;font-style:italic;color:var(--text-secondary)}.testimonial-author{border-top:1px solid var(--border-light);padding-top:1.5rem;display:flex;flex-direction:column}.author-name{font-weight:600;color:var(--text-primary)}.author-title{font-size:.875rem;color:var(--text-secondary)}.landing-page-footer{padding:4rem 2rem 2rem;background-color:var(--background-dark);border-top:1px solid var(--border-light)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto 3rem;padding-bottom:3rem;border-bottom:1px solid var(--border-light)}.footer-logo-section h3{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.footer-logo-section p{color:var(--text-secondary);max-width:200px}.footer-links{display:contents}.footer-column h4{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.footer-column a{display:block;color:var(--text-secondary);text-decoration:none;margin-bottom:.75rem;transition:color .2s ease}.footer-column a:hover{color:var(--text-primary)}.footer-social h4{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.social-icons{display:flex;gap:1rem}.social-icons a{color:var(--text-secondary);transition:color .2s ease,transform .2s ease}.social-icons a:hover{color:var(--text-primary);transform:translateY(-2px)}.footer-bottom{text-align:center;color:var(--text-secondary);font-size:.875rem}@media (max-width: 768px){.footer-content{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.footer-content{grid-template-columns:1fr;text-align:center}.footer-logo-section p{margin:0 auto}.social-icons{justify-content:center}}.landing-page-screen{background-color:var(--background-dark);color:var(--text-primary);min-height:100vh}.enquiry-form-progress{display:flex;gap:.5rem;width:100%;margin-bottom:1.5rem}.enquiry-form-progress-rectangle{flex:1;height:10px;border-radius:2px;background:#ffffff26;border:1px solid rgba(255,255,255,.2);transition:all .2s ease}.enquiry-form-progress-rectangle.is-active{background:linear-gradient(135deg,#4dbf5d,#5ed668);border-color:#4dbf5db3;box-shadow:0 4px 15px #4dbf5d40}.initial-contact-step{display:flex;flex-direction:column;gap:1rem}.initial-contact-step-title{font-size:1.5rem;margin:0 0 .5rem;color:#fff}.initial-contact-step-subtitle{margin:0 0 1rem;color:#ffffffde}.initial-contact-step-form-group{display:flex;flex-direction:column;gap:.5rem}.initial-contact-step-form-group label{color:#fff;font-weight:500}.initial-contact-step-form-group input,.initial-contact-step-phone-row select{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.8rem 1rem;color:#fff;font-size:1rem;outline:none;transition:all .2s ease}.initial-contact-step-phone-row{display:flex;gap:.75rem}.initial-contact-step-phone-row select{min-width:170px}.initial-contact-step-phone-row option{background:#121212;color:#fff}.initial-contact-step-phone-row input{flex:1}.initial-contact-step-form-group input:focus,.initial-contact-step-phone-row select:focus{border-color:#4dbf5d;box-shadow:0 0 0 3px #4dbf5d33}.initial-contact-step-actions{margin-top:.5rem;display:flex;justify-content:flex-end}.initial-contact-step-actions .primary-button{min-width:120px}.initial-contact-step-validation-error{margin:0;color:#ff6b6b;font-size:.9rem;font-weight:500}@media (max-width: 768px){.initial-contact-step-phone-row{flex-direction:column}.initial-contact-step-phone-row select{min-width:100%}.initial-contact-step-actions{justify-content:stretch}.initial-contact-step-actions .primary-button{width:100%;min-height:44px}}.enquiry-question-step{display:flex;flex-direction:column;gap:1rem}.enquiry-question-step-title{font-size:1.5rem;margin:0;color:#fff}.enquiry-question-step-subtitle{margin:0;color:#ffffffde}.enquiry-question-step-options{display:flex;flex-direction:column;gap:.75rem}.enquiry-question-step-option{border:1px solid rgba(255,255,255,.25);border-radius:12px;background:#ffffff0a;color:#fff;text-align:left;padding:.9rem 1rem;cursor:pointer;transition:all .2s ease;min-height:44px}.enquiry-question-step-option:hover{border-color:#4dbf5d99;transform:translateY(-1px);background:#4dbf5d1f}.enquiry-question-step-option.is-selected{border-color:#4dbf5dcc;background:#4dbf5d33;box-shadow:0 8px 25px #4dbf5d33}.enquiry-question-step-custom-input{display:flex;flex-direction:column;gap:.5rem}.enquiry-question-step-custom-input label{color:#fff;font-weight:500}.enquiry-question-step-custom-input textarea{resize:vertical;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.8rem 1rem;color:#fff;font-size:1rem;outline:none;transition:all .2s ease;min-height:110px}.enquiry-question-step-custom-input textarea:focus{border-color:#4dbf5d;box-shadow:0 0 0 3px #4dbf5d33}.enquiry-question-step-actions{margin-top:.5rem;display:flex;justify-content:space-between;gap:.75rem}.enquiry-question-step-actions .secondary-button,.enquiry-question-step-actions .primary-button{min-width:120px}.enquiry-question-step-actions .secondary-button{color:#fff;background:#ffffff14;border:1px solid rgba(255,255,255,.35)}.enquiry-question-step-actions .secondary-button:hover:not(:disabled){background:#ffffff24;border-color:#ffffff8c}.enquiry-question-step-validation-error{margin:0;color:#ff6b6b;font-size:.9rem;font-weight:500}@media (max-width: 768px){.enquiry-question-step-actions{flex-direction:column}.enquiry-question-step-actions .secondary-button,.enquiry-question-step-actions .primary-button{width:100%;min-height:44px}}.enquiry-completion-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;padding:1.5rem .5rem}.enquiry-completion-step h2{margin:0;color:#fff;font-size:1.5rem}.enquiry-completion-step p{margin:0;color:#ffffffde}.sign-up-screen-wrapper{min-height:calc(100vh - 72px);width:100%;display:flex;justify-content:center;align-items:center;padding:1.5rem}.sign-up-screen-card{width:100%;max-width:760px;background:#000000e6;border:1px solid rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0006;padding:1.5rem}.sign-up-screen-error-message{margin-top:1rem;color:#ff6b6b;font-size:.95rem}@media (max-width: 768px){.sign-up-screen-wrapper{padding:1rem;align-items:flex-start}.sign-up-screen-card{padding:1rem}}@media (max-width: 480px){.sign-up-screen-wrapper{padding:.5rem}.sign-up-screen-card{padding:.9rem}}.signin-wrapper{display:flex;flex-direction:column;justify-content:center;align-items:center;flex-grow:1;color:#fff}.signin-top-text{display:block;font-size:36px;font-weight:400;color:#b0b0b0;margin-top:6rem;margin-bottom:3rem;letter-spacing:.01em}.form-wrapper{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2.5rem;width:100%;max-width:420px;box-shadow:0 20px 40px #0000004d;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-wrapper:hover{transform:translateY(-2px);box-shadow:0 25px 50px #0006;border-color:#4dbf5d4d}.form-inputs{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-inputs input{background:#ffffff14;border:2px solid rgba(255,255,255,.15);border-radius:12px;padding:1rem 1.25rem;font-size:1rem;color:#fff;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit}.form-inputs input::placeholder{color:#999;font-weight:400}.form-inputs input:hover{background:#ffffff1f;border-color:#4dbf5d80;transform:translateY(-1px);box-shadow:0 8px 25px #4dbf5d26}.form-inputs input:focus{background:#ffffff26;border-color:#4dbf5d;transform:translateY(-1px);box-shadow:0 8px 25px #4dbf5d40}.form-inputs input:valid:not(:placeholder-shown){border-color:#4dbf5db3;background:#4dbf5d1a}.form-bottom{display:flex;justify-content:center}.form-bottom button{background:linear-gradient(135deg,#666,#888);color:#fff;border:none;border-radius:12px;padding:.8rem 1.5rem;font-size:.9rem;font-weight:600;cursor:not-allowed;transition:all .4s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;min-width:120px;opacity:.6;transform:scale(.95)}.form-bottom button:not(:disabled){background:linear-gradient(135deg,#4dbf5d,#5ed668);cursor:pointer;opacity:1;transform:scale(1);box-shadow:0 4px 15px #4dbf5d4d}.form-bottom button:not(:disabled):hover{transform:scale(1.05) translateY(-2px);box-shadow:0 8px 25px #4dbf5d66;background:linear-gradient(135deg,#5ed668,#6ee474)}.form-bottom button:not(:disabled):active{transform:scale(1.02) translateY(-1px)}.form-bottom button:disabled{transform:scale(.95)}.form-submission-error-row{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem;padding:1rem;background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:10px;animation:fadeInShake .5s ease-out;max-width:420px;width:100%}.form-submission-error-message{color:#ff6b6b;font-size:.9rem;font-weight:500}@keyframes fadeInShake{0%{opacity:0;transform:translate(-10px)}50%{transform:translate(5px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.signin-wrapper{padding:15px;justify-content:flex-start;padding-top:10vh}.form-wrapper{padding:2rem 1.5rem;border-radius:16px;margin-top:1rem}.form-inputs{gap:1.25rem;margin-bottom:1.75rem}.form-inputs input{padding:.9rem 1rem;font-size:.95rem;border-radius:10px}.form-bottom button{padding:.9rem 2rem;font-size:.95rem;border-radius:10px}}@media (max-width: 480px){.signin-wrapper{padding:10px;padding-top:8vh}.form-wrapper{padding:1.5rem 1.25rem;border-radius:14px}.signin-wrapper h1:after{font-size:.85rem}}@media (prefers-contrast: high){.form-wrapper{border:2px solid rgba(255,255,255,.3)}.form-inputs input{border-width:2px}}@media (prefers-reduced-motion: reduce){.form-wrapper,.form-inputs input,.form-bottom button{transition:none}.form-wrapper:hover,.form-inputs input:hover,.form-bottom button:hover{transform:none}@keyframes fadeInShake{0%{opacity:0}to{opacity:1}}}.bank-account-selector-container{position:relative;display:inline-block}.bank-account-selector-trigger{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s ease,transform .1s ease}.bank-account-selector-trigger:hover{background-color:#ffffff1a;transform:scale(1.02)}.bank-account-selector-trigger:active{transform:scale(.98)}.bank-account-selector-arrow{display:flex;align-items:center;color:#fff;transition:transform .2s ease}.bank-account-selector-name{color:#fff;font-size:1.1rem;font-weight:600;white-space:nowrap}.bank-account-selector-loading{color:#fff;padding:.5rem;font-style:italic}.bank-account-selector-dropdown{position:absolute;top:100%;left:0;min-width:200px;background-color:#000000e6;border:1px solid rgba(255,255,255,.2);border-radius:6px;box-shadow:0 4px 12px #0000004d;z-index:1000;margin-top:.25rem;max-height:300px;overflow-y:auto}.bank-account-selector-option{padding:.75rem 1rem;color:#fff;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(255,255,255,.1)}.bank-account-selector-option:last-child{border-bottom:none}.bank-account-selector-option:hover{background-color:#ffffff1a}.bank-account-selector-option.active{background-color:#4dbf5d33;border-left:3px solid #4DBF5D}.bank-account-selector-option.active:hover{background-color:#4dbf5d4d}@media (max-width: 768px){.bank-account-selector-dropdown{min-width:250px;left:-50px}.bank-account-selector-name{font-size:1rem}}.add-bank-account-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label-with-help{display:flex;align-items:center}.form-group label{color:#fff;font-weight:500;font-size:.9rem}.form-input,.form-select{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.75rem 1rem;color:#fff;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#4dbf5d;box-shadow:0 0 0 2px #4dbf5d33}.form-input::placeholder{color:#ffffff80}.form-select option{background:#141414f2;color:#fff}@media (max-width: 768px){.add-bank-account-form{gap:1.25rem}}.add-button{background:#4dbf5d;border:none;border-radius:6px;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;color:#fff}.add-button:hover{background:#45a555}.add-button-dropdown-wrapper{position:relative;display:inline-block}.hover-dropdown-menu{position:absolute;top:100%;right:0;min-width:180px;background-color:#000000e6;border:1px solid rgba(255,255,255,.2);border-radius:6px;box-shadow:0 4px 12px #0000004d;z-index:1000;margin-top:.25rem;max-height:300px;overflow-y:auto}.hover-dropdown-option{padding:.75rem 1rem;color:#fff;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(255,255,255,.1)}.hover-dropdown-option:last-child{border-bottom:none}.hover-dropdown-option:hover{background-color:#ffffff1a}.bank-account-body{height:100%;display:flex;flex-direction:column}.bank-account-body.loading-state,.bank-account-body.error-state,.bank-account-body.empty-state{height:100%;display:flex;align-items:center;justify-content:center;color:#fffc}.account-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;height:100%;display:flex;flex-direction:column;gap:1rem}.account-header{position:relative;padding-bottom:.6rem}.account-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:#fff3}.account-name{font-size:1.3rem;font-weight:600;margin:0}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (max-width: 768px){.account-grid{grid-template-columns:1fr}}.account-item{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.9rem;display:flex;flex-direction:column;gap:.4rem}.label{color:#ffffffde;font-size:.85rem}.value{font-size:1.05rem;font-weight:600}.amount.positive{color:var(--success)}.amount.negative{color:var(--error)}.span-2{grid-column:1 / -1}.bank-accounts-container{height:100%;width:100%;display:flex;flex-direction:column;padding:1.5rem}.bank-accounts-header{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;position:relative}.bank-accounts-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:#fff}.bank-accounts-content{flex:1;overflow:auto}.selected-bank-account-info{color:#fff}.selected-bank-account-info h2{color:#fff;margin-bottom:1rem;font-size:1.5rem}.selected-bank-account-info p{color:#fff;margin-bottom:.5rem;font-size:1rem}.no-bank-accounts{display:flex;align-items:center;justify-content:center;height:200px;color:#fff;text-align:center}.no-bank-accounts p{font-size:1.1rem;opacity:.8}.bank-accounts-error{display:flex;align-items:center;justify-content:center;height:200px;color:#ff6b6b;text-align:center;font-size:1.1rem}.bank-accounts-empty-state{height:100%;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;text-align:center}.bank-accounts-empty-state h2{font-size:1.5rem;margin-bottom:.25rem}@media (max-width: 768px){.bank-accounts-container{padding:1rem}.bank-accounts-header{margin-bottom:1.5rem;flex-direction:column;gap:1rem;align-items:stretch}.bank-accounts-header:after{left:1rem;right:1rem}.add-statement-button{width:100%;text-align:center}.selected-bank-account-info h2{font-size:1.3rem}}.statement-image-thumbnail{width:60px;object-fit:cover;border-radius:4px;border:1px solid var(--border-light);box-shadow:0 1px 2px #0000001a}.full-screen-image-container{display:inline-flex;justify-content:center;align-items:flex-start;min-height:0;width:fit-content;max-width:100%}.full-screen-image{object-fit:contain;max-width:90vw;max-height:77vh;width:auto;height:auto}.statement-line-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:.6rem 0;border-bottom:1px solid var(--border-light)}.statement-line-header .line-date{color:var(--text-secondary);font-size:.95rem;justify-self:start}.statement-line-header .line-payee{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.statement-line-header .line-amount{justify-self:end;font-weight:600}.statement-line-header .line-amount.negative{color:var(--error)}.statement-line-header .line-amount.positive{color:var(--success)}.statement-line-body{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:1rem 0}.statement-line-upload-details,.statement-line-analysis-details{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--border-light);border-radius:12px;background:#ffffff0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.section-header{font-size:1rem;font-weight:600;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light)}.detail-row{display:grid;grid-template-columns:160px 1fr;align-items:start;gap:1rem}.detail-label{color:var(--text-secondary);font-weight:500}.image-value{display:inline-flex;align-items:center}.pill{display:inline-block;padding:.15rem .5rem;border-radius:12px;font-size:.85rem;border:1px solid var(--border-light)}.pill-success{color:var(--success)}.pill-error{color:var(--error)}@media (max-width: 768px){.statement-line-body{grid-template-columns:1fr;gap:1rem}.detail-row{grid-template-columns:120px 1fr;gap:.75rem}}.statement-lines-list-container{height:100%;display:grid;grid-template-columns:1fr;gap:.75rem;padding:0 1rem;transition:grid-template-columns .25s ease}.statement-lines-list-container.has-selection{grid-template-columns:42% 6px 58%;gap:0}.list-pane{container-type:inline-size;container-name:list-pane;display:flex;flex-direction:column;gap:.75rem;transform:translate(0);transition:transform .25s ease,width .25s ease;min-height:0;overflow-y:auto;padding-right:0}.statement-lines-list-container.has-selection .list-pane{transform:translate(-8px)}.detail-pane{overflow:auto;padding-left:.5rem;min-height:0}.vertical-resizer{position:relative;width:12px;cursor:col-resize;background:transparent;align-self:stretch}.vertical-resizer:before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translate(-.5px);width:1px;background:#fff;opacity:.7}.vertical-resizer:hover:before,.vertical-resizer.dragging:before{opacity:1}.statement-lines-list-container.dragging,.statement-lines-list-container.dragging .list-pane,.statement-lines-list-container.dragging .detail-pane{transition:none!important}.list-entry-container{display:grid;grid-template-columns:140px 1fr 140px;align-items:center;gap:1rem;padding:.75rem 1rem}@container list-pane (max-width: 715px){.list-entry-container{grid-template-columns:100px 1fr 100px}}@container list-pane (max-width: 548px){.list-entry-container{grid-template-columns:60px 1fr 80px}}.line-date{color:var(--text-secondary);font-size:.95rem}.line-payee{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.line-amount{justify-self:end;font-weight:600}.line-amount.negative{color:var(--error)}.line-amount.positive{color:var(--success)}.loading-state,.loading-more,.end-of-list,.empty-state,.error-state{text-align:center;color:var(--text-secondary);padding:.75rem 0}.error-state{color:var(--error)}.infinite-scroll-sentinel{height:1px}@media (max-width: 768px){.statement-lines-list-container{padding:0 .5rem}.statement-lines-list-container.has-selection{grid-template-columns:100%}.detail-pane{display:none}}.scroll-container{height:100%;overflow:hidden}.scroll-container:has(.date-filter-menu.minimised) .statement-lines-list-container{transition:all .25s ease}.scroll-container:has(.date-filter-menu.minimised) .statement-lines-list-container.has-selection{grid-template-columns:42% 58%}.upload-list-content{display:grid;grid-template-columns:250px 200px 1fr;gap:1rem;align-items:center;padding:.75rem 1rem}.upload-date-section,.upload-bank-section,.upload-period-section{min-width:0}.upload-period-section{text-align:right}.upload-detail-container{display:flex;flex-direction:column;gap:1rem;padding:.75rem .25rem}.upload-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.meta-row{display:flex;gap:.5rem}.meta-key{color:var(--text-secondary);font-size:.9rem;letter-spacing:.02em}.meta-value{color:var(--text-primary);font-weight:500}.upload-detail-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.upload-image-card{position:relative;border:1px solid var(--border-light);border-radius:12px;overflow:hidden;background:#ffffff0d;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.upload-image-card:hover{transform:translateY(-1px);background:#ffffff14;box-shadow:0 8px 32px #0006}.upload-image-card img{display:block;width:100%;height:160px;object-fit:cover}.fullscreen-statement-image{max-width:85vw;max-height:85vh;border-radius:12px;border:1px solid var(--border-light);background:#ffffff0d}@media (max-width: 768px){.upload-list-content{grid-template-columns:120px 150px 1fr;gap:.75rem;padding:.6rem .8rem}.upload-detail-meta{grid-template-columns:1fr}}@media (max-width: 480px){.upload-list-content{grid-template-columns:100px 120px 1fr;gap:.5rem;padding:.5rem .6rem}.upload-period-section{text-align:left}}.contact-detail{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.contact-detail h2{margin:0;font-size:1.5rem}.contact-detail-header{display:flex;flex-direction:row;align-items:center;gap:1rem}.contact-avatar{width:250px;border-radius:8px;overflow:hidden;background-color:var(--border-light);display:flex;align-items:center;justify-content:center}.contact-avatar img.statement-image-thumbnail{width:100%;height:auto}.contact-avatar-placeholder{width:100%;height:100%;background:#ffffff1a}.contact-header-text .contact-subtitle{color:var(--text-secondary)}.contact-detail-section{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border-light)}.detail-row{display:grid;grid-template-columns:140px 1fr;align-items:start;gap:.5rem}.detail-label{font-weight:500;color:var(--text-secondary)}.detail-value{color:var(--text-primary)}.detail-value.multiline{white-space:pre-wrap}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.25rem .5rem;border:1px solid var(--border-medium);border-radius:999px;font-size:.85rem;color:var(--text-primary);background-color:#ffffff0f}.contact-fullscreen-image{max-width:90vw;max-height:75vh;width:auto;height:auto;object-fit:contain;border-radius:8px;border:1px solid var(--border-light)}.bookkeeping-contacts-screen{width:100%;height:100%;display:flex;flex-direction:column;color:var(--text-primary)}.bookkeeping-contacts-screen-header{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:1rem}.search-bar{width:100%;padding:.75rem 1rem;background-color:#ffffff1a;border:1px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:1rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;transition:all .2s ease;outline:none}.search-bar::placeholder{color:#fff9}.search-bar:focus{border-color:var(--brand-primary);background-color:#ffffff26;box-shadow:0 0 0 3px #4dbf5d33}.search-bar:hover{border-color:var(--border-medium);background-color:#ffffff1f}.screen-title{font-size:1.5rem;margin-bottom:1.5rem;font-weight:600}.contacts-list-container{flex-grow:1;display:flex;flex-direction:column;border:1px solid var(--border-light);border-radius:12px;background-color:#0003;overflow:hidden;width:100%}.contacts-list-header{display:grid;grid-template-columns:60px 1fr auto;gap:1rem;padding:.75rem 1.5rem;color:var(--text-secondary);border-bottom:1px solid var(--border-light);font-weight:500;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.header-mrt{text-align:right}.contacts-list{overflow-y:auto;max-height:calc(100vh - 200px);width:100%}.contact-list-item .list-item-main{padding:0!important;display:block}.contact-list-item .list-item-content{width:100%;display:block}.contact-list-item-content{display:grid;grid-template-columns:60px 1fr auto;gap:1rem;padding:.25rem;align-items:center;font-size:1rem}.contact-item-icon{margin-left:.5rem;display:flex;align-items:center;justify-content:center}.contact-image{width:40px;height:40px;border-radius:4px;object-fit:contain}.contact-image-placeholder{width:40px;height:40px;border-radius:4px;background-color:var(--border-medium)}.contact-item-name{font-weight:500}.contact-item-mrt{margin-right:.75rem;color:var(--text-secondary);font-size:.9rem;text-align:right;justify-self:end}.loading-state,.error-state,.empty-state{padding:2rem;text-align:center;color:var(--text-secondary);font-style:italic}.contacts-list-header>div{cursor:pointer;-webkit-user-select:none;user-select:none}.sort-arrow{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;margin-left:5px;vertical-align:middle}.sort-arrow.ascending{border-top:5px solid currentColor}.sort-arrow.descending{border-bottom:5px solid currentColor}:root{--background-dark: #121212;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .87)}:root{--brand-primary: #4DBF5D;--brand-hover: #5ed668;--brand-accent: #6ee474;--success: #22c55e;--warning: #fbbf24;--error: #ff6b6b}.primary-button{background:linear-gradient(135deg,#4dbf5d,#5ed668);color:#fff;border:none;border-radius:12px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;box-shadow:0 4px 15px #4dbf5d4d}.primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4dbf5d66;background:linear-gradient(135deg,#5ed668,#6ee474)}body{background-color:var(--background-dark);color:var(--text-primary);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}h1,h2,h3,h4,h5,h6,p,span,div,button,input,textarea{color:var(--text-primary)}*{margin:0;padding:0;box-sizing:border-box}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}*::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px;transition:background .2s ease}*::-webkit-scrollbar-thumb:hover{background:#ffffff4d}*::-webkit-scrollbar-thumb:active{background:#ffffff80}*::-webkit-scrollbar-corner{background:#ffffff0d}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.87) rgba(255,255,255,.05)}@media (max-width: 768px){*::-webkit-scrollbar{width:6px;height:6px}}@media (max-width: 480px){*::-webkit-scrollbar{width:4px;height:4px}}.mrg{outline:1px solid red}.mgg{outline:1px solid green}.mtg{outline:1px solid blue}.mbg{outline:1px solid black}.mtrg{outline:3px solid red}.mtgg{outline:3px solid green}.mttg{outline:3px solid blue}.mtbg{outline:3px solid black}
