.tooltip-trigger{display:inline-flex;align-items:center;justify-content:center}.tooltip{position:fixed;z-index:1000;padding:.5rem .75rem;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;line-height:1.4;white-space:nowrap;box-shadow:0 4px 12px #0000004d;pointer-events:none;animation:tooltipFadeIn .2s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tooltip-top:before,.tooltip-bottom:before,.tooltip-left:before,.tooltip-right:before{content:"";position:absolute;width:0;height:0;border-style:solid}.tooltip-top:before{bottom:-6px;left:50%;transform:translate(-50%);border-width:6px 6px 0 6px;border-color:var(--bg-tertiary) transparent transparent transparent}.tooltip-bottom:before{top:-6px;left:50%;transform:translate(-50%);border-width:0 6px 6px 6px;border-color:transparent transparent var(--bg-tertiary) transparent}.tooltip-left:before{right:-6px;top:50%;transform:translateY(-50%);border-width:6px 0 6px 6px;border-color:transparent transparent transparent var(--bg-tertiary)}.tooltip-right:before{left:-6px;top:50%;transform:translateY(-50%);border-width:6px 6px 6px 0;border-color:transparent var(--bg-tertiary) transparent transparent}.global-search{position:relative;width:100%;max-width:600px}.global-search.header-search{max-width:100%}.global-search-input-wrapper{position:relative;display:flex;align-items:center}.global-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-right:2.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.75rem;font-family:inherit;transition:border-color var(--transition-fast)}.global-search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.global-search-spinner,.global-search-clear{position:absolute;right:var(--spacing-sm);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;font-size:.7rem}.global-search-clear:hover{color:var(--text-primary)}.global-search-results{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-xs);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:1000;max-height:500px;display:flex;flex-direction:column;overflow:hidden}.global-search-results-header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color);font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.global-search-results-list{overflow-y:auto;max-height:450px}.global-search-result{display:flex;align-items:flex-start;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--border-color);gap:var(--spacing-sm)}.global-search-result:last-child{border-bottom:none}.global-search-result:hover{background-color:var(--bg-primary)}.global-search-result:focus{outline:none;background-color:var(--bg-primary)}.global-search-result-icon{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}.global-search-result-content{flex:1;min-width:0}.global-search-result-title{font-size:.75rem;font-weight:500;color:var(--text-primary);margin-bottom:var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result-subtitle{font-size:.65rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.global-search-result-date{font-size:.65rem;color:var(--text-tertiary)}.global-search-result-type{font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;margin-left:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-primary);border-radius:var(--radius-sm)}.global-search-no-results{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:1000;text-align:center;color:var(--text-tertiary);font-size:.7rem}.demo-banner{background:linear-gradient(135deg,#3b82f626,#6366f126);border:1px solid rgba(59,130,246,.3);border-radius:.5rem;padding:.75rem 1rem;margin-bottom:1rem}.demo-banner-content{display:flex;align-items:flex-start;gap:.75rem}.demo-banner-content svg{flex-shrink:0;margin-top:.1rem;color:#3b82f6}.demo-banner-text{display:flex;flex-direction:column;gap:.25rem}.demo-banner-text strong{font-size:.9rem;color:var(--text-primary)}.demo-banner-text span{font-size:.8rem;color:var(--text-secondary);line-height:1.4}.demo-banner.compact{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem;margin-bottom:0;font-size:.75rem;font-weight:500;color:#3b82f6}.demo-banner.compact svg{width:14px;height:14px}@keyframes demo-pulse{0%,to{opacity:1}50%{opacity:.7}}.demo-banner.compact{animation:demo-pulse 3s ease-in-out infinite}.page-transition{width:100%;min-height:100%;position:relative;transition:transform .2s ease-out,opacity .2s ease-out;touch-action:auto;-webkit-overflow-scrolling:touch;will-change:auto}.page-transition-entering{transform:translate(-10px);opacity:.8;pointer-events:none;transition:transform .15s ease-out,opacity .15s ease-out}.page-transition-entered{transform:translate(0);opacity:1;animation:fadeInSlide .2s ease-out}@keyframes fadeInSlide{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.page-transition-entering{transform:translateY(-15px)}.page-transition-entered{animation:fadeInSlideMobile .3s cubic-bezier(.4,0,.2,1)}@keyframes fadeInSlideMobile{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}.layout{display:flex;min-height:100vh;height:100vh;background-color:var(--bg-primary);touch-action:auto;-webkit-overflow-scrolling:touch;overflow:hidden}.sidebar{width:180px;background-color:var(--bg-tertiary);border-right:1px solid var(--border-color);color:var(--text-primary);display:flex;flex-direction:column;position:fixed;height:100vh;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.sidebar-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);position:relative}.sidebar-close-button{display:none}.logo-container{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-xs)}.app-logo{opacity:.9;transition:opacity var(--transition-normal);color:var(--text-primary)}.app-logo:hover{opacity:1}.sidebar-header h1{font-size:.9rem;font-weight:600;color:var(--text-primary);letter-spacing:-.5px;text-align:center}.sidebar-nav{flex:1;padding:var(--spacing-sm) 0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.nav-section{margin-bottom:var(--spacing-md)}.nav-section-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:var(--spacing-xs) var(--spacing-md);margin-bottom:var(--spacing-xs);opacity:.7}.nav-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-tertiary);text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease;border-left:3px solid transparent;margin-bottom:var(--spacing-xs)}.nav-item:hover{background-color:var(--bg-secondary);color:var(--text-secondary);border-left-color:var(--border-hover)}.nav-item.active{background-color:var(--bg-secondary);color:var(--text-primary);font-weight:500;border-left-color:var(--accent-color)}.nav-group{display:flex;flex-direction:column}.nav-group-toggle{width:100%;background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit;justify-content:flex-start}.nav-chevron{margin-left:auto;transition:transform var(--transition-normal);display:flex;align-items:center}.nav-chevron.expanded{transform:rotate(180deg)}.nav-chevron svg{stroke:var(--text-muted)}.nav-submenu{display:flex;flex-direction:column;padding-left:var(--spacing-md)}.nav-subitem{position:relative;padding-left:calc(var(--spacing-md) + 18px + var(--spacing-md))!important;font-size:.75rem;border-left:none!important;border-left-width:0!important}.nav-subitem:before{content:"";position:absolute;left:calc(var(--spacing-md) + 9px);width:4px;height:4px;border-radius:50%;background:var(--text-muted)}.nav-subitem.active{color:var(--text-primary);font-weight:600;background:#ffffff0d}.nav-subitem.active:before{background:var(--accent-color);width:6px;height:6px}.nav-item.super-admin{margin-top:var(--spacing-md);border-top:1px solid var(--border-color);padding-top:var(--spacing-md);background:linear-gradient(90deg,rgba(255,193,7,.05),transparent);color:#d97706}.nav-item.super-admin:hover{background:linear-gradient(90deg,rgba(255,193,7,.15),transparent);border-left-color:#d97706}.nav-item.super-admin.active{background:linear-gradient(90deg,rgba(255,193,7,.2),transparent);border-left-color:#f59e0b;color:#f59e0b}.nav-icon{margin-right:var(--spacing-md);display:flex;align-items:center;color:inherit}.nav-icon svg{stroke:currentColor;width:18px;height:18px}.nav-label{font-size:.8rem}.main-content{flex:1;margin-left:180px;padding:var(--spacing-lg);background-color:var(--bg-primary);height:100vh;color:var(--text-primary);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:auto;-webkit-transform:translateZ(0)}.main-header{position:sticky;top:0;z-index:100;background:var(--bg-primary);padding:var(--spacing-md) 0;margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.main-header .header-search{max-width:600px;margin:0 auto}@media (max-width: 768px){.sidebar{width:160px}.main-content{margin-left:160px;padding:var(--spacing-md)}.nav-label{font-size:.75rem}}.sidebar-donation{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0;min-height:auto}.donate-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);color:var(--text-secondary);text-decoration:none;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.75rem;font-weight:500;text-align:center;transition:all var(--transition-normal)}.donate-button:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover)}.donate-button svg{stroke:currentColor}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-shrink:0;min-height:auto}.user-info{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;min-width:0}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.user-details{display:flex;flex-direction:column;min-width:0}.user-name{font-size:.75rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.app-version{font-size:.6rem;color:var(--text-tertiary);margin-top:2px;font-weight:400}.logout-button{width:32px;height:32px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0}.logout-button:hover{background:#ef444426;border-color:#ef44444d;color:#ef4444}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-primary);color:var(--text-muted)}.auth-loading .spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.auth-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:var(--spacing-xl)}.auth-error h2{color:#ef4444;margin-bottom:var(--spacing-md)}.auth-error p{color:var(--text-muted)}.mobile-header{display:none}@media (max-width: 768px){.mobile-header{display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;height:56px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:0 var(--spacing-md);z-index:1001}.hamburger-button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-normal)}.hamburger-button:hover{background:var(--bg-hover)}.mobile-logo{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-primary);font-size:.9rem;font-weight:600}.mobile-header-spacer{width:44px}.sidebar{position:fixed;left:-260px;top:0;width:260px;height:100vh;height:100dvh;z-index:1002;transition:left .3s ease;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;touch-action:auto;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.sidebar.mobile-open{left:0;box-shadow:4px 0 20px #0000004d}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1001;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);touch-action:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}.main-content{margin-left:0;padding-top:72px;padding-left:var(--spacing-md);padding-right:var(--spacing-md);padding-bottom:calc(80px + env(safe-area-inset-bottom,20px));height:100vh;height:100dvh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain;-webkit-transform:translateZ(0);transform:translateZ(0)}.nav-item{padding:var(--spacing-sm) var(--spacing-md);min-height:44px}.nav-label{display:block;font-size:.85rem}.nav-icon{margin-right:var(--spacing-sm);width:18px;height:18px}.sidebar-header{padding:var(--spacing-sm) var(--spacing-xs);flex-shrink:0;min-height:auto;max-height:70px;position:relative;overflow:hidden}.sidebar-header h1{font-size:.85rem}.sidebar-close-button{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:background var(--transition-normal);z-index:10}.sidebar-close-button:hover{background:var(--bg-hover)}.sidebar-close-button:active{background:var(--bg-active)}.logo-container{margin-bottom:var(--spacing-xs)}.app-logo{width:32px;height:32px}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{font-size:.75rem}.user-role{font-size:.7rem}.app-version{font-size:.65rem}.sidebar-footer{flex-direction:row;padding:var(--spacing-sm) var(--spacing-md);flex-shrink:0;border-top:1px solid var(--border-color);min-height:60px;overflow:hidden;margin-top:auto;background:var(--bg-tertiary)}.user-avatar{width:28px;height:28px}.logout-button{width:36px;height:36px;padding:0}.sidebar-nav{flex:1 1 auto;overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:var(--spacing-xs) 0;min-height:0;scroll-behavior:auto;overscroll-behavior:auto;-webkit-transform:translateZ(0)}.sidebar-nav.scrolling .nav-item{transition:none!important}@supports (-webkit-touch-callout: none){.sidebar-nav{overflow-y:scroll;-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0)}}.nav-section{margin-bottom:var(--spacing-sm)}.nav-section-label{font-size:.65rem;padding:var(--spacing-xs) var(--spacing-sm)}.sidebar-donation{padding:var(--spacing-xs) var(--spacing-sm);flex-shrink:0;min-height:auto}.donate-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.7rem}.sidebar .demo-banner{flex-shrink:0;min-height:auto;max-height:50px;padding:var(--spacing-xs) var(--spacing-sm)}.sidebar .demo-banner.compact{padding:var(--spacing-xs) var(--spacing-sm);font-size:.7rem}.main-header{padding:var(--spacing-sm) 0}.main-header .header-search{max-width:100%}}@media (max-width: 480px){.mobile-header{padding:0 var(--spacing-sm)}.mobile-logo span{display:none}.main-content{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.sidebar{width:100%;left:-100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.sidebar.mobile-open{left:0}}.bottom-nav{display:none}@media (max-width: 768px){.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;min-height:64px;height:calc(64px + env(safe-area-inset-bottom,0px));background:var(--bg-tertiary);border-top:1px solid var(--border-color);z-index:1000;padding-bottom:env(safe-area-inset-bottom,0);overflow:hidden}.bottom-nav-scroll{display:flex;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;width:100%;height:100%;align-items:center}.bottom-nav-scroll::-webkit-scrollbar{display:none}.bottom-nav-item{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);text-decoration:none;font-size:.65rem;font-weight:500;background:transparent;border:none;cursor:pointer;transition:color var(--transition-normal);padding:var(--spacing-xs) var(--spacing-sm);min-width:64px;white-space:nowrap}.bottom-nav-item:hover,.bottom-nav-item:active{color:var(--text-secondary)}.bottom-nav-item.active{color:var(--accent-light)}.bottom-nav-item svg{stroke:currentColor}}@supports (-webkit-touch-callout: none){.main-content{-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0)}}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000004d;min-width:300px;max-width:500px;cursor:pointer;animation:slideIn .3s ease-out;transition:all .2s ease}.toast:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 6px 16px #0006}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.toast-success .toast-icon{color:var(--accent-color)}.toast-error .toast-icon{color:var(--text-secondary)}.toast-warning .toast-icon{color:var(--accent-light)}.toast-info .toast-icon{color:var(--accent-color)}.toast-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.toast-message{color:var(--text-secondary);font-size:.95rem;line-height:1.4}.toast-action{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--accent-color);padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;align-self:flex-start}.toast-action:hover{background:var(--bg-hover);border-color:var(--accent-color);transform:translateY(-1px)}.toast-close{flex-shrink:0;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.toast-close:hover{background:var(--bg-hover);color:var(--text-secondary)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast-container>*{pointer-events:auto}@media (max-width: 768px){.toast-container{bottom:1rem;right:1rem;left:1rem}.toast{min-width:auto;max-width:100%}}.shortcuts-help-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:3000;padding:2rem;animation:fadeIn .2s ease-out}.shortcuts-help-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px #00000080;animation:slideUp .3s ease-out;color:var(--text-secondary)}.shortcuts-help-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.shortcuts-help-header h2{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.shortcuts-help-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.shortcuts-help-close:hover{background:var(--bg-hover);color:var(--text-secondary)}.shortcuts-help-body{padding:1.5rem}.shortcuts-category{margin-bottom:2rem}.shortcuts-category:last-child{margin-bottom:0}.shortcuts-category h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;font-weight:600;text-transform:capitalize}.shortcuts-list{display:flex;flex-direction:column;gap:.75rem}.shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px}.shortcut-keys kbd{display:inline-block;padding:.25rem .5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;font-family:monospace;font-size:.85rem;color:var(--text-secondary);box-shadow:0 2px 4px #0003}.shortcut-description{color:var(--text-secondary);font-size:.95rem}.shortcuts-empty{text-align:center;color:var(--text-tertiary);padding:2rem}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background-color:var(--bg-primary)}.error-boundary-content{max-width:500px;text-align:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.error-icon{color:var(--text-tertiary);margin:0 auto var(--spacing-md);display:block}.error-boundary-content h1{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md)}.error-message{color:var(--text-secondary);font-size:.8rem;line-height:1.6;margin-bottom:var(--spacing-lg)}.error-details{margin:var(--spacing-md) 0;text-align:left;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--spacing-md)}.error-details summary{color:var(--text-secondary);font-size:.7rem;cursor:pointer;margin-bottom:var(--spacing-sm);-webkit-user-select:none;user-select:none}.error-details pre{color:var(--text-muted);font-size:.65rem;overflow-x:auto;margin:var(--spacing-sm) 0;white-space:pre-wrap;word-break:break-all}.error-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-lg)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a;position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.02) 2px,rgba(255,255,255,.02) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,255,255,.02) 2px,rgba(255,255,255,.02) 4px);pointer-events:none}.login-container{position:relative;width:100%;max-width:420px;padding:2.5rem;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;box-shadow:0 25px 50px -12px #000c;z-index:1}.login-loading{text-align:center;color:#e5e5e5}.login-loading p{margin-top:1rem;color:#888}.login-header{text-align:center;margin-bottom:2rem}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:120px;height:120px;margin-bottom:1.5rem;color:#e5e5e5;opacity:.9;transition:opacity .2s ease}.login-logo:hover{opacity:1}.login-header h1{margin:0;font-size:1.75rem;font-weight:600;color:#f5f5f5;letter-spacing:-.025em}.login-subtitle{margin:.5rem 0 0;font-size:.95rem;color:#888}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#e5e5e5;font-size:.9rem}.login-error svg{flex-shrink:0;color:#e5e5e5}.form-group label{font-size:.875rem;font-weight:500;color:#d1d1d1;text-transform:uppercase;letter-spacing:.05em}.form-group input{padding:.875rem 1rem;background:#0f0f0f;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#f5f5f5;font-size:1rem;transition:all .2s ease}.form-group input::placeholder{color:#666}.form-group input:focus{outline:none;border-color:#ffffff4d;box-shadow:0 0 0 3px #ffffff0d;background:#111}.login-button{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;padding:1rem;background:#f5f5f5;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:#0a0a0a;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.login-button:hover:not(:disabled){background:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.5;cursor:not-allowed}.demo-login-section{margin-top:1.5rem;text-align:center}.demo-divider{display:flex;align-items:center;margin-bottom:1.25rem}.demo-divider:before,.demo-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.demo-divider span{padding:0 1rem;color:#666;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.demo-login-button{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:1rem;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:.5rem;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #22c55e4d}.demo-login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #22c55e66}.demo-login-button:active:not(:disabled){transform:translateY(0)}.demo-login-button:disabled{opacity:.7;cursor:not-allowed}.demo-login-button svg{flex-shrink:0}.demo-login-button .spinner-small{border-color:#ffffff4d;border-top-color:#fff}.demo-hint{margin:.75rem 0 0;font-size:.8rem;color:#888}.login-footer{margin-top:2rem;text-align:center}.login-footer p{margin:0;font-size:.8rem;color:#666}.login-footer .version-badge{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;background:linear-gradient(135deg,#6366f133,#8b5cf633);border:1px solid rgba(99,102,241,.3);border-radius:20px;font-size:.7rem;font-weight:600;color:#a5b4fc;letter-spacing:.05em;text-transform:uppercase}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#e5e5e5;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.spinner-small{width:18px;height:18px;border:2px solid rgba(0,0,0,.2);border-top-color:#0a0a0a;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 480px){.login-container{margin:1rem;padding:2rem 1.5rem}.login-header h1{font-size:1.5rem}.login-logo{width:100px;height:100px}}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;display:inline-block}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{display:flex;flex-direction:column;gap:.5rem}.skeleton-line{margin-bottom:.25rem}.skeleton-table{display:flex;flex-direction:column;gap:.5rem}.skeleton-table-header,.skeleton-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding:1rem;border-bottom:1px solid var(--border-color)}.skeleton-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}.spinner{display:inline-block;animation:spin 1s linear infinite}.spinner-svg{width:100%;height:100%;display:block}.spinner-sm{width:14px;height:14px}.spinner-md{width:18px;height:18px}.spinner-lg{width:24px;height:24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-primary .spinner,.btn-secondary .spinner,.btn-danger .spinner{margin-right:var(--spacing-sm);vertical-align:middle}.email-compose-modal{background:#1e2235;border-radius:16px;border:1px solid rgba(255,255,255,.1);width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.email-compose-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.email-compose-modal .modal-title{display:flex;align-items:center;gap:.75rem}.email-compose-modal .modal-title h2{margin:0;font-size:1.125rem;font-weight:600;color:#fff}.email-compose-modal .modal-title svg{color:#60a5fa}.email-compose-modal .modal-close{background:none;border:none;color:#ffffff80;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.email-compose-modal .modal-close:hover{color:#fff}.email-compose-modal .modal-body{padding:1.5rem;overflow-y:auto;flex:1}.email-compose-modal .form-group{margin-bottom:1.25rem}.email-compose-modal .form-group label{display:block;font-size:.875rem;font-weight:500;color:#fffc;margin-bottom:.5rem}.email-compose-modal .form-control{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.9375rem;transition:all .2s}.email-compose-modal .form-control:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.email-compose-modal .form-control::placeholder{color:#fff6}.email-compose-modal textarea.form-control{resize:vertical;min-height:150px;font-family:inherit;line-height:1.5}.email-compose-modal small{display:block;margin-top:.375rem;font-size:.75rem;color:#ffffff80}.email-compose-modal .checkbox-group label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.email-compose-modal .checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:#60a5fa}.email-compose-modal .attachment-info{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#60a5fa1a;border:1px solid rgba(96,165,250,.2);border-radius:8px;margin-bottom:1rem}.email-compose-modal .attachment-icon{font-size:1.25rem}.email-compose-modal .attachment-name{color:#60a5fa;font-size:.875rem;font-weight:500}.email-compose-modal .warning-box{padding:1.5rem;background:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:10px;text-align:center}.email-compose-modal .warning-box strong{display:block;color:#fbbf24;margin-bottom:.5rem}.email-compose-modal .warning-box p{color:#ffffffb3;margin:0;font-size:.875rem}.email-compose-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.08);background:#0003}.email-compose-modal .btn-secondary{padding:.625rem 1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.email-compose-modal .btn-secondary:hover:not(:disabled){background:#ffffff1a}.email-compose-modal .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.email-compose-modal .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.email-compose-modal .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.email-compose-modal .btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}@media (max-width: 640px){.email-compose-modal{max-height:100vh;border-radius:0}}.accordion{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);overflow:hidden;transition:border-color var(--transition-normal)}.accordion:hover{border-color:var(--border-hover)}.accordion-header{width:100%;padding:var(--spacing-md);background:transparent;border:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--text-primary);font-size:.95rem;font-weight:500;text-align:left;transition:background var(--transition-normal)}.accordion-header:hover{background:var(--bg-tertiary)}.accordion-title{display:flex;align-items:center;gap:var(--spacing-sm)}.accordion-icon{display:flex;align-items:center;color:var(--text-muted)}.accordion-chevron{color:var(--text-muted);transition:transform var(--transition-normal);flex-shrink:0}.accordion.open .accordion-chevron{transform:rotate(180deg)}.accordion-content{padding:0 var(--spacing-md) var(--spacing-md);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}@media (max-width: 768px){.accordion-header{padding:var(--spacing-sm);font-size:.875rem}.accordion-content{padding:0 var(--spacing-sm) var(--spacing-sm)}}.reminder-widget{background:var(--card-bg);border:1px solid var(--border-color);border-radius:.75rem;overflow:hidden}.reminder-widget.compact{border:none;background:transparent}.reminder-widget-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.reminder-header-left{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--text-primary)}.reminder-header-left svg{color:var(--text-secondary)}.reminder-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .4rem;font-size:.7rem;font-weight:600;border-radius:10px}.reminder-badge.critical{background:#ef444426;color:#ef4444}.reminder-count{font-size:.8rem;color:var(--text-muted)}.reminder-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--text-muted)}.reminder-loading-spinner{width:18px;height:18px;border:2px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;animation:reminder-spin .8s linear infinite}.reminder-loading-spinner.small{width:14px;height:14px}@keyframes reminder-spin{to{transform:rotate(360deg)}}.reminder-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem;color:var(--text-muted)}.reminder-empty svg{opacity:.5}.reminder-empty span{font-weight:500}.reminder-empty p{font-size:.85rem;margin:0;opacity:.7}.reminder-list{padding:.5rem}.reminder-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:.5rem;transition:background .15s ease}.reminder-item:hover{background:var(--hover-bg)}.reminder-item.reminder-critical{border-left:3px solid #ef4444;background:#ef44440d}.reminder-item.reminder-critical:hover{background:#ef44441a}.reminder-item.reminder-warning{border-left:3px solid #f59e0b;background:#f59e0b0d}.reminder-item.reminder-warning:hover{background:#f59e0b1a}.reminder-item.reminder-info{border-left:3px solid var(--text-muted)}.reminder-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:.5rem;background:var(--hover-bg);color:var(--text-secondary)}.reminder-critical .reminder-icon{background:#ef444426;color:#ef4444}.reminder-warning .reminder-icon{background:#f59e0b26;color:#f59e0b}.reminder-content{flex:1;min-width:0}.reminder-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-weight:500;color:var(--text-primary);font-size:.9rem}.reminder-days{font-size:.75rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.reminder-critical .reminder-days{color:#ef4444}.reminder-warning .reminder-days{color:#f59e0b}.reminder-entity{font-size:.85rem;color:var(--text-secondary);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reminder-property{font-size:.75rem;color:var(--text-muted);margin-top:.15rem}.reminder-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.reminder-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:.375rem;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease;text-decoration:none}.reminder-action-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.reminder-action-btn:disabled{opacity:.5;cursor:not-allowed}.reminder-footer{padding:.75rem 1rem;border-top:1px solid var(--border-color);text-align:center}.reminder-show-all{font-size:.85rem;color:var(--text-secondary);text-decoration:none;transition:color .15s ease}.reminder-show-all:hover{color:var(--text-primary)}.reminder-widget.compact .reminder-list{padding:0}.reminder-widget.compact .reminder-item{padding:.5rem}.reminder-widget.compact .reminder-icon{width:28px;height:28px}.reminder-widget.compact .reminder-title{font-size:.85rem}.reminder-widget.compact .reminder-entity{font-size:.8rem}.dashboard{max-width:1400px;overflow:visible;min-height:auto}.dashboard-minimal{padding:var(--spacing-md)}.stats-grid-minimal{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card-minimal{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-md);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-md);transition:border-color var(--transition-normal);text-decoration:none;color:inherit}.stat-card-minimal:hover{border-color:var(--border-hover)}.stat-card-minimal .stat-icon{color:var(--text-muted);flex-shrink:0}.stat-card-minimal .stat-content{flex:1}.stat-card-minimal .stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.stat-card-minimal .stat-label{font-size:.875rem;color:var(--text-muted)}.dashboard-accordions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.stats-grid-secondary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm)}@media (max-width: 768px){.dashboard-minimal{padding:var(--spacing-sm)}.stats-grid-minimal{grid-template-columns:1fr;gap:var(--spacing-sm)}.stat-card-minimal{padding:var(--spacing-sm)}.stat-card-minimal .stat-value{font-size:1.25rem}.stats-grid-secondary{grid-template-columns:1fr}}.dashboard-header{margin-bottom:var(--spacing-xl);display:flex;justify-content:space-between;align-items:flex-start}.dashboard-header h1{margin-bottom:var(--spacing-xs);color:var(--text-primary);font-weight:600;font-size:1.5rem}.dashboard-date{color:var(--text-muted);font-size:.875rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:1.5rem}.stats-grid.secondary{grid-template-columns:repeat(3,1fr)}.stats-grid.advanced{grid-template-columns:repeat(6,1fr)}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid.secondary,.stats-grid.advanced{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.dashboard{padding:var(--spacing-sm)}.dashboard-header{margin-bottom:var(--spacing-md);flex-direction:column;gap:var(--spacing-sm)}.dashboard-header h1{font-size:1.25rem}.stats-grid,.stats-grid.secondary,.stats-grid.advanced{grid-template-columns:1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.stat-card{padding:var(--spacing-sm);transition:none}.stat-card.clickable:hover{transform:none;box-shadow:none}.dashboard-widget{margin-bottom:var(--spacing-md)}.chart-container{height:200px!important;min-height:200px!important}.widgets-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}.stat-card:hover{border-color:var(--border-hover)}.stat-card.clickable{cursor:pointer;text-decoration:none;color:inherit}.stat-card.clickable:hover{border-color:var(--accent-color);background:var(--bg-tertiary);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-card.small{padding:.875rem;flex-direction:column;align-items:flex-start;gap:.25rem}.stat-icon{color:var(--text-muted);display:flex;align-items:center;justify-content:center}.stat-icon svg{stroke:currentColor}.stat-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.stat-card.small .stat-value{font-size:1.1rem}.stat-trend{margin-top:.25rem}.trend-badge{display:inline-block;padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.trend-badge.success{background:#22c55e26;color:#22c55e}.trend-badge.warning{background:#f9731626;color:#f97316}.trend-badge.danger{background:#ef444426;color:#ef4444}.trend-badge.info{background:#3b82f626;color:#3b82f6}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-section{background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:var(--radius-md)}.dashboard-section h2{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:.375rem}.dashboard-section h2 svg{stroke:var(--text-muted)}.warnings-section{grid-column:1 / -1}.chart-section{min-height:250px}.chart-container{height:160px;margin-bottom:.75rem}.chart-legend{display:flex;justify-content:center;gap:2rem;font-size:.8rem}.legend-color{width:12px;height:12px;border-radius:3px}.legend-color.green{background:#64748bcc}.legend-color.red{background:#334155cc}.section-header h2{margin-bottom:0}.tasks-list{display:flex;flex-direction:column;gap:.75rem}.task-item{padding:.875rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal)}.task-item:hover{border-color:var(--border-hover)}.task-item.overdue{border-left:3px solid var(--danger-color);background:#ef44440d}.task-title{font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.task-meta{font-size:.75rem;color:var(--text-muted)}.warnings-list{display:flex;flex-direction:column;gap:.5rem}.warning-item{padding:.875rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem}.warning-item.warning{border-left:3px solid var(--warning-color);background:#f973160d}.warning-item.danger{border-left:3px solid var(--danger-color);background:#ef444414}.warning-item.info{border-left:3px solid var(--info-color, #0ea5e9);background:#0ea5e90d}.warning-link{color:var(--text-primary);text-decoration:none;transition:color var(--transition-normal)}.warning-link:hover{color:var(--primary-color)}.alert{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.875rem;margin-bottom:.75rem}.alert-danger{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--danger-color)}.quick-actions{background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:var(--radius-md)}.quick-actions h2{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:.85rem;font-weight:600}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.action-btn{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:.75rem 1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-normal);min-width:80px}.action-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.action-btn svg{stroke:currentColor}.action-btn span:last-child{font-size:.75rem;font-weight:500}.placeholder-text{color:var(--text-muted);font-style:italic;font-size:.875rem}.dashboard-grid.two-cols{grid-template-columns:repeat(2,1fr)}@media (max-width: 1024px){.dashboard-grid.two-cols{grid-template-columns:1fr}}.quick-actions-card{padding:1.25rem}.quick-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}@media (max-width: 600px){.quick-action-grid{grid-template-columns:repeat(2,1fr)}}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.quick-action-btn:hover{border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-2px)}.quick-action-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.quick-action-icon.property{background:#60a5fa26;color:#60a5fa}.quick-action-icon.person{background:#22c55e26;color:#4ade80}.quick-action-icon.task{background:#f9731626;color:#fb923c}.quick-action-icon.email{background:#a855f726;color:#c084fc}.quick-action-icon.calendar{background:#ec489926;color:#f472b6}.quick-action-icon.document{background:#eab30826;color:#fbbf24}.quick-action-btn span{font-size:.75rem;font-weight:500;text-align:center}.contact-list{display:flex;flex-direction:column;gap:.5rem}.contact-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);text-decoration:none;transition:all .2s}.contact-item:hover{border-color:var(--border-hover);background:#ffffff08}.contact-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#60a5fa33,#818cf833);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#60a5fa;flex-shrink:0}.contact-info{flex:1;min-width:0}.contact-name{font-weight:500;color:var(--text-primary);font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-role{font-size:.75rem;color:var(--text-muted)}.document-list{display:flex;flex-direction:column;gap:.5rem}.document-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.document-item .document-icon{width:32px;height:32px;border-radius:6px;background:#eab3081a;display:flex;align-items:center;justify-content:center;color:#fbbf24;flex-shrink:0}.document-item .document-info{flex:1;min-width:0}.document-item .document-title{font-weight:500;color:var(--text-primary);font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-item .document-meta{display:flex;align-items:center;gap:.5rem;font-size:.7rem;color:var(--text-muted)}.document-item .document-meta .category{background:#64748b33;padding:.125rem .375rem;border-radius:4px}.calendar-preview{display:flex;flex-direction:column;gap:.5rem}.calendar-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s}.calendar-item.today{border-left:3px solid #60a5fa;background:#60a5fa0d}.calendar-date{width:40px;height:45px;background:#64748b26;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.calendar-date .day{font-size:1.125rem;font-weight:700;color:var(--text-primary);line-height:1}.calendar-date .month{font-size:.625rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.calendar-item.today .calendar-date{background:#60a5fa33}.calendar-item.today .calendar-date .day{color:#60a5fa}.calendar-info{flex:1;min-width:0}.calendar-title{font-weight:500;color:var(--text-primary);font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-category{font-size:.75rem;color:var(--text-muted)}.empty-calendar{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;color:var(--text-muted);text-align:center}.empty-calendar svg{width:40px;height:40px;margin-bottom:.75rem;opacity:.5}.empty-calendar p{margin:0 0 1rem;font-size:.875rem}.btn-sm{display:inline-flex;padding:.5rem 1rem;background:#60a5fa1a;border:1px solid rgba(96,165,250,.3);border-radius:6px;color:#60a5fa;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .2s}.btn-sm:hover{background:#60a5fa33}.auto-save-indicator{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.auto-save-indicator.saving{color:var(--text-secondary);background:#4a5a7a1a}.auto-save-indicator.saved{color:#22c55e;background:#22c55e1a}.auto-save-indicator.error{color:#ef4444;background:#ef44441a}.auto-save-indicator .spinner{width:12px;height:12px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .6s linear infinite}.auto-save-indicator .checkmark{color:#22c55e;font-weight:600}.auto-save-indicator .error-icon{color:#ef4444;font-weight:600}.auto-save-indicator.saved{animation:fadeOut .5s ease-out 2s forwards}@keyframes fadeOut{to{opacity:0;transform:translateY(-5px)}}.property-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:900px;color:var(--text-secondary)}.property-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c;background-color:#e74c3c1a;border-width:2px}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.error-message{display:block;color:#e74c3c;font-size:.65rem;margin-top:var(--spacing-xs);font-weight:500}.form-group label:has(+input.error),.form-group label:has(+select.error),.form-group label:has(+textarea.error){color:#e74c3c}.tag-input-group{display:flex;gap:.5rem;margin-bottom:.5rem}.tag-input-group input{flex:1}.btn-secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);padding:.375rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.8rem;cursor:pointer;font-weight:500;transition:all var(--transition-normal)}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);padding:.4rem .75rem;border-radius:16px;font-size:.85rem}.tag-remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2rem;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.tag-remove:hover{background-color:var(--bg-hover)}.address-unknown-group{margin-bottom:0}.checkbox-label-inline{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.8rem!important;text-transform:none!important;color:var(--text-secondary)!important;font-weight:400!important}.checkbox-label-inline input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-color)}.form-group input.disabled,.form-group input:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-primary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-tertiary)}.empty-state-icon{margin-bottom:1.5rem;color:var(--text-muted);opacity:.5}.empty-state-title{margin:0 0 .75rem;font-size:1.25rem;font-weight:600;color:var(--text-secondary)}.empty-state-message{margin:0 0 1.5rem;color:var(--text-tertiary);line-height:1.6;max-width:400px}.empty-state-action{margin-top:.5rem}.sortable-table-wrapper{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.sortable-table{width:100%;border-collapse:collapse}.sortable-table thead{background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:10}.sortable-table th{padding:.5rem .625rem;text-align:left;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none}.sortable-table th.sortable{cursor:pointer;transition:background-color var(--transition-normal)}.sortable-table th.sortable:hover{background-color:var(--bg-tertiary)}.th-content{display:flex;align-items:center;gap:.5rem}.sort-icon{display:flex;align-items:center;color:var(--text-tertiary);transition:color .2s ease}.sortable-table th.sortable:hover .sort-icon{color:var(--text-secondary)}.sortable-table th.sortable.active .sort-icon{color:var(--accent-color)}.sortable-table td{padding:.5rem .625rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;background-color:inherit}.sortable-table td a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal)}.sortable-table td a:hover{color:var(--text-primary);text-decoration:underline}.sortable-table tbody tr{background-color:var(--bg-secondary);transition:background-color var(--transition-fast)}.sortable-table tbody tr:hover{background-color:var(--bg-tertiary)}.sortable-table tbody tr:nth-child(2n){background-color:#252a3a4d}.sortable-table tbody tr:nth-child(2n):hover{background-color:var(--bg-tertiary)}.sortable-table tbody tr.clickable{cursor:pointer}.sortable-table tbody tr:last-child td{border-bottom:none}.sortable-table-empty{padding:3rem;text-align:center;color:var(--text-tertiary)}.sortable-table input[type=checkbox],.sortable-table-wrapper input[type=checkbox]{width:18px;height:18px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:2px solid var(--border-color);border-radius:var(--radius-sm);background:transparent!important;position:relative;transition:all var(--transition-fast);margin:0}.sortable-table input[type=checkbox]:hover,.sortable-table-wrapper input[type=checkbox]:hover{border-color:var(--accent-color);background:#6366f11a!important}.sortable-table input[type=checkbox]:checked,.sortable-table-wrapper input[type=checkbox]:checked{background:var(--accent-color)!important;border-color:var(--accent-color)}.sortable-table input[type=checkbox]:checked:after,.sortable-table-wrapper input[type=checkbox]:checked:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}@media (max-width: 768px){.sortable-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;background:linear-gradient(to right,var(--bg-secondary),var(--bg-secondary)) local,linear-gradient(to right,var(--bg-secondary),var(--bg-secondary)) local,linear-gradient(to right,rgba(0,0,0,.2),transparent) scroll,linear-gradient(to left,rgba(0,0,0,.2),transparent) scroll;background-position:0 0,100% 0,0 0,100% 0;background-size:20px 100%,20px 100%,10px 100%,10px 100%;background-repeat:no-repeat}.sortable-table{min-width:600px}.sortable-table th,.sortable-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}.sortable-table th{font-size:.6rem}.sortable-table .hide-mobile{display:none!important}.sortable-table th:first-child,.sortable-table td:first-child{position:sticky;left:0;z-index:5;background:inherit}.sortable-table thead th:first-child{background:var(--bg-tertiary);z-index:15}.sortable-table th:has(input[type=checkbox]),.sortable-table td:has(input[type=checkbox]){width:32px;padding:.4rem}}@media (max-width: 480px){.sortable-table{min-width:500px}.sortable-table th,.sortable-table td{padding:.35rem .4rem;font-size:.65rem}.sortable-table th{font-size:.55rem}}.pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.pagination-info{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.pagination-text{color:var(--text-secondary);font-size:.8rem}.pagination-page-size{display:flex;align-items:center;gap:var(--spacing-sm)}.pagination-page-size label{color:var(--text-tertiary);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.pagination-select{padding:.25rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem;background-color:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-normal)}.pagination-select:focus{outline:none;border-color:var(--border-hover)}.pagination-controls{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.pagination-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);font-size:.75rem}.pagination-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{display:flex;align-items:center;gap:var(--spacing-xs)}.pagination-page{min-width:28px;height:28px;padding:0 .5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);font-size:.75rem;font-weight:500}.pagination-page:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.pagination-page.active{background:var(--accent-color);border-color:var(--accent-color);color:var(--text-primary);font-weight:600}.pagination-ellipsis{color:var(--text-muted);font-size:.75rem;padding:0 var(--spacing-xs);-webkit-user-select:none;user-select:none}@media (max-width: 768px){.pagination{flex-direction:column;align-items:stretch}.pagination-info{justify-content:space-between;width:100%}.pagination-controls{justify-content:center;width:100%}}.sortable-table-with-pagination{width:100%}.filter-chips{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px}.filter-chips-label{color:var(--text-tertiary);font-size:.875rem;font-weight:500}.filter-chips-list{display:flex;flex-wrap:wrap;gap:.5rem;flex:1}.filter-chip{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:.875rem}.filter-chip-label{color:var(--text-secondary)}.filter-chip-remove{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.125rem;border-radius:2px;transition:all .2s ease;line-height:1}.filter-chip-remove:hover{background:var(--bg-hover);color:var(--text-secondary)}.filter-chips-clear{padding:.375rem .75rem;background:none;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:4px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.filter-chips-clear:hover{background:var(--bg-hover);border-color:var(--border-hover)}@media (max-width: 768px){.filter-chips{flex-direction:column;align-items:flex-start}.filter-chips-clear{width:100%}}.fab-container{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:100}.fab-main{width:56px;height:56px;border-radius:50%;background-color:var(--accent-color);color:var(--text-primary);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;transition:all var(--transition-normal);z-index:101}.fab-main:hover{background-color:var(--accent-hover);transform:scale(1.05);box-shadow:0 6px 16px #0006}.fab-main:active{transform:scale(.95)}.fab-main:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.fab-main.open{transform:rotate(45deg)}.fab-actions{position:absolute;bottom:70px;right:0;display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:flex-end}.fab-action{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px #0000004d;transition:all var(--transition-normal);animation:slideUp .2s ease-out forwards;opacity:0}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fab-action:hover{background-color:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary);transform:translate(-4px)}.fab-action:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.fab-action-label{font-size:.8rem;font-weight:500}.fab-action svg{flex-shrink:0;width:20px;height:20px}@media (max-width: 768px){.fab-container{bottom:var(--spacing-md);right:var(--spacing-md)}.fab-main{width:48px;height:48px}}.bulk-actions-bar{padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;position:sticky;top:0;z-index:10;box-shadow:0 2px 8px #0000001a}.bulk-actions-info{display:flex;align-items:center;gap:.5rem}.bulk-actions-count{font-weight:600;color:var(--text-primary);font-size:.875rem}.bulk-actions-buttons{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.bulk-action-icon{display:inline-flex;align-items:center;margin-right:.25rem}.bulk-actions-more{position:relative}.bulk-actions-dropdown{position:absolute;top:100%;right:0;margin-top:.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;overflow:hidden}.bulk-action-item{width:100%;padding:.75rem 1rem;background:transparent;border:none;text-align:left;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:background-color var(--transition-fast);font-size:.875rem}.bulk-action-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.bulk-action-item:disabled{opacity:.5;cursor:not-allowed}.bulk-actions-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999;background:transparent}@media (max-width: 768px){.bulk-actions-bar{flex-direction:column;align-items:stretch}.bulk-actions-buttons{justify-content:stretch}.bulk-actions-buttons button{flex:1;min-width:0}}.bulk-status-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:500px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:1.5rem;flex:1;overflow-y:auto}.bulk-status-info{margin-bottom:1rem;color:var(--text-secondary);font-size:.875rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary);font-size:.875rem}.form-select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;transition:border-color var(--transition-fast)}.form-select:focus{outline:none;border-color:var(--accent-color)}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.75rem}.bulk-note-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:600px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.bulk-note-info{margin-bottom:1rem;color:var(--text-secondary);font-size:.875rem}.form-textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;font-family:inherit;resize:vertical;transition:border-color var(--transition-fast)}.form-textarea:focus{outline:none;border-color:var(--accent-color)}.form-textarea::placeholder{color:var(--text-muted)}.bulk-tag-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:500px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.bulk-tag-info{margin-bottom:1rem;color:var(--text-secondary);font-size:.875rem}.existing-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.tag-button{padding:.5rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast)}.tag-button:hover{background:var(--bg-hover);border-color:var(--accent-color);color:var(--text-primary)}.form-input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--accent-color)}.form-input::placeholder{color:var(--text-muted)}.properties-page{max-width:1200px}.page-header h1{color:var(--text-primary);font-weight:600;font-size:1.25rem}.properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.property-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;text-decoration:none;color:inherit;transition:all var(--transition-normal);display:flex;flex-direction:column}.property-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.property-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.75rem}.property-card .card-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.property-card .card-body{flex:1;display:flex;flex-direction:column;gap:.75rem}.property-card .card-address{display:flex;flex-direction:column;font-size:.8rem;color:var(--text-secondary)}.property-card .card-details{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.property-card .card-details .detail{display:flex;flex-direction:column}.property-card .card-details .label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase}.property-card .card-details .value{font-size:.85rem;font-weight:500;color:var(--text-primary)}.property-card .card-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.property-card .btn-action{flex:1;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.75rem;cursor:pointer;transition:all var(--transition-normal)}.property-card .btn-action:hover{background:var(--bg-hover);border-color:var(--border-hover)}.property-card .btn-action.btn-danger:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.empty-state{background:var(--bg-secondary);border:1px solid var(--border-color);padding:3rem;border-radius:8px;text-align:center;color:var(--text-tertiary)}.properties-table{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.status-kandidat,.status-bestand,.status-verkauft,.status-sanierung{background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}.status-unknown{background-color:#64646433;color:var(--text-muted);border:1px solid var(--border-color);opacity:.6}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:8px}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500;color:var(--text-secondary);white-space:nowrap}.filter-group select,.filter-group input{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background-color:var(--bg-secondary);color:var(--text-secondary)}.filter-group input{min-width:150px}.property-link{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal)}.property-link:hover{color:var(--text-primary);text-decoration:underline}.action-buttons{display:flex;gap:.75rem;align-items:center}.btn-move{color:var(--text-secondary)!important;font-size:.8rem}.btn-move:hover{color:#3b82f6!important}.delete-confirm-modal{max-width:500px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.delete-confirm-modal h2{margin:0 0 1rem;font-size:1.1rem;color:#ef4444}.delete-property-name{color:var(--text-secondary);margin-bottom:1rem}.delete-property-name strong{color:var(--text-primary)}.loading-impact{display:flex;align-items:center;gap:.75rem;padding:1.5rem;color:var(--text-muted)}.spinner-small{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--text-muted);border-radius:50%;animation:spin .8s linear infinite}.delete-impact-warning{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.warning-title{color:#ef4444;font-weight:600;margin:0 0 .75rem;font-size:.9rem}.impact-list{list-style:none;padding:0;margin:0 0 .75rem}.impact-list li{padding:.375rem 0;color:var(--text-secondary);font-size:.9rem}.impact-list li strong{color:var(--text-primary)}.warning-permanent{color:#ef4444;font-size:.8rem;margin:0;font-weight:500}.no-impact{color:var(--text-muted);font-style:italic;margin-bottom:1rem}.delete-confirm-input{margin-bottom:1.5rem}.delete-confirm-input label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.85rem}.delete-confirm-input strong{color:var(--text-primary);font-family:monospace;background:var(--bg-tertiary);padding:.125rem .375rem;border-radius:var(--radius-sm)}.delete-confirm-input input{width:100%;padding:.625rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--bg-primary);color:var(--text-primary)}.delete-confirm-input input:focus{outline:none;border-color:#ef4444}.delete-confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-danger{background:#ef4444;color:#fff;border:none;padding:.625rem 1rem;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.properties-page{padding:0}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1.1rem}.filters{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm)}.filter-group{width:100%;flex-direction:column;align-items:stretch}.filter-group input{min-width:100%}.properties-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.property-card{padding:var(--spacing-md)}.property-card .card-details{grid-template-columns:repeat(2,1fr)}.properties-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.properties-table table{min-width:500px}.properties-table th:nth-child(4),.properties-table td:nth-child(4),.properties-table th:nth-child(6),.properties-table td:nth-child(6){display:none}.properties-table th,.properties-table td{padding:.4rem .5rem;font-size:.7rem}.properties-page .action-buttons{gap:.25rem}.properties-page .btn-watchlist-move,.view-mode-toggle{display:none}.action-buttons{flex-wrap:wrap}.delete-confirm-modal{max-width:100%;margin:var(--spacing-md)}}@media (max-width: 768px) and (orientation: landscape){.properties-grid{grid-template-columns:repeat(2,1fr)}.property-card .card-details{grid-template-columns:repeat(3,1fr)}}.confirm-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem;animation:fadeIn .2s ease-out}.confirm-dialog{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;max-width:500px;width:100%;box-shadow:0 8px 32px #00000080;animation:slideUp .3s ease-out;color:var(--text-secondary)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-dialog-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border-color)}.confirm-dialog-header h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.confirm-dialog-body{padding:1.5rem}.confirm-dialog-body p{margin:0;color:var(--text-secondary);line-height:1.6}.confirm-dialog-actions{display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--border-color)}.confirm-dialog-danger .confirm-dialog-header{border-bottom-color:var(--accent-color)}.confirm-dialog-danger .confirm-dialog-header h3{color:var(--text-primary)}.confirm-dialog-warning .confirm-dialog-header{border-bottom-color:var(--accent-light)}.breadcrumbs{margin-bottom:1.5rem}.breadcrumbs-list{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.breadcrumb-item{display:flex;align-items:center;gap:.5rem}.breadcrumb-link{color:var(--text-tertiary);text-decoration:none;transition:color .2s ease;font-size:.9rem}.breadcrumb-link:hover{color:var(--text-secondary);text-decoration:underline}.breadcrumb-text{color:var(--text-tertiary);font-size:.9rem}.breadcrumb-current{color:var(--text-primary);font-weight:500;font-size:.9rem}.breadcrumb-separator{color:var(--text-muted);flex-shrink:0}@media (max-width: 768px){.breadcrumbs{margin-bottom:1rem}.breadcrumb-link,.breadcrumb-text,.breadcrumb-current{font-size:.85rem}}.photo-gallery{display:flex;flex-direction:column;gap:1rem}.upload-area{margin-bottom:1rem}.upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border:2px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-normal);text-align:center}.upload-label:hover{border-color:var(--primary-color);background:#6366f10d}.upload-icon{font-size:2rem;margin-bottom:.5rem}.upload-label span{color:var(--text-primary);font-weight:500}.upload-hint{font-size:.75rem!important;color:var(--text-muted)!important;font-weight:400!important;margin-top:.25rem}.photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.photo-item{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:var(--bg-primary);border:1px solid var(--border-color)}.photo-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.photo-item:hover img{transform:scale(1.05)}.photo-overlay{position:absolute;bottom:0;left:0;right:0;padding:.5rem;background:linear-gradient(transparent,#000c);display:flex;justify-content:space-between;align-items:flex-end;opacity:0;transition:opacity var(--transition-normal)}.photo-item:hover .photo-overlay{opacity:1}.photo-title{font-size:.75rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.photo-actions{display:flex;gap:.25rem}.photo-actions button{background:none;border:none;padding:.25rem;cursor:pointer;font-size:.875rem;opacity:.8;transition:opacity var(--transition-fast)}.photo-actions button:hover{opacity:1}.title-edit{display:flex;gap:.25rem;width:100%}.title-edit input{flex:1;padding:.25rem .5rem;font-size:.75rem;border:none;border-radius:var(--radius-sm);background:#ffffffe6;color:#333}.title-edit button{padding:.25rem .5rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.no-photos{color:var(--text-muted);font-style:italic;text-align:center;padding:2rem}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-content img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:var(--radius-md)}.lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;opacity:.7;transition:opacity var(--transition-fast)}.lightbox-close:hover{opacity:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;font-size:2rem;padding:1rem 1.5rem;cursor:pointer;transition:background var(--transition-fast);border-radius:var(--radius-md)}.lightbox-nav:hover:not(:disabled){background:#fff3}.lightbox-nav:disabled{opacity:.3;cursor:default}.lightbox-nav.prev{left:-60px}.lightbox-nav.next{right:-60px}.lightbox-title{position:absolute;bottom:-35px;left:50%;transform:translate(-50%);color:#fff;font-size:.9rem;white-space:nowrap}.lightbox-counter{position:absolute;bottom:-35px;right:0;color:#fff9;font-size:.8rem}@media (max-width: 768px){.lightbox-nav.prev{left:10px}.lightbox-nav.next{right:10px}.photos-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.unit-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:600px;color:var(--text-secondary)}.unit-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.tenancy-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:800px;color:var(--text-secondary)}.tenancy-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.multi-select-container{display:flex;flex-direction:column;gap:.5rem}.selected-items{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.selected-item{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);padding:.4rem .75rem;border-radius:16px;font-size:.85rem}.remove-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2rem;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.remove-btn:hover{background-color:var(--bg-hover)}.household-members{display:flex;flex-direction:column;gap:1rem}.add-member-form{display:grid;grid-template-columns:2fr 1fr 1.5fr auto;gap:.5rem;align-items:end}.add-member-form input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.add-member-form input:focus{outline:none;border-color:var(--border-hover)}.members-list{display:flex;flex-direction:column;gap:.5rem}.member-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--bg-tertiary);border-radius:4px;border:1px solid var(--border-color)}.member-item span{color:var(--text-secondary)}@media (max-width: 768px){.add-member-form{grid-template-columns:1fr}}.loan-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:700px;color:var(--text-secondary)}.loan-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date]{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.form-group input:focus{outline:none;border-color:var(--border-hover)}.form-group input[type=checkbox]{width:auto;margin-right:var(--spacing-sm);accent-color:var(--accent-color)}.calculation-hint{margin-top:var(--spacing-sm);font-size:.65rem;color:var(--text-muted);font-style:italic}.drag-drop-zone{position:relative;border:2px dashed var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);background:var(--bg-secondary);transition:all var(--transition-normal);cursor:pointer}.drag-drop-zone:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.drag-drop-zone.dragging{border-color:var(--accent-color);background:#5a6b7d33;transform:scale(1.02)}.drag-drop-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.drag-drop-icon{color:var(--text-tertiary);margin-bottom:var(--spacing-md);transition:color var(--transition-normal)}.drag-drop-zone:hover .drag-drop-icon,.drag-drop-zone.dragging .drag-drop-icon{color:var(--accent-color)}.drag-drop-text{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-xs)}.drag-drop-link{color:var(--accent-color);text-decoration:underline}.drag-drop-hint{color:var(--text-muted);font-size:.75rem}.drag-drop-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.searchable-multi-select{position:relative;width:100%}.searchable-multi-select-trigger{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background-color:var(--bg-tertiary, #252a3a);border:1px solid var(--border-color, #3a4155);border-radius:var(--radius-sm, .25rem);cursor:pointer;transition:border-color var(--transition-normal, .2s);min-height:2.5rem}.searchable-multi-select-trigger:hover{border-color:var(--border-hover, #4a5a7a)}.searchable-multi-select-trigger.disabled{opacity:.5;cursor:not-allowed}.searchable-multi-select.open .searchable-multi-select-trigger{border-color:var(--accent-color, #4a5a7a)}.searchable-multi-select.error .searchable-multi-select-trigger{border-color:var(--error-color, #e74c3c)}.searchable-multi-select-value{flex:1;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;min-height:1.5rem}.selected-tags{display:flex;flex-wrap:wrap;gap:.25rem}.selected-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;background-color:var(--accent-color, #4a5a7a);color:var(--text-primary, #ffffff);border-radius:var(--radius-sm, .25rem);font-size:.75rem;font-weight:500}.tag-remove{background:none;border:none;color:var(--text-primary, #ffffff);cursor:pointer;font-size:1rem;line-height:1;padding:0;margin:0;display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;transition:opacity var(--transition-fast, .15s)}.tag-remove:hover{opacity:.7}.placeholder-text{color:var(--text-muted, #8b92a7)}.searchable-multi-select-arrow{display:flex;align-items:center;color:var(--text-secondary, #b0b8c8);transition:transform var(--transition-normal, .2s)}.searchable-multi-select.open .searchable-multi-select-arrow{transform:rotate(180deg)}.searchable-multi-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background-color:var(--bg-secondary, #1e2332);border:1px solid var(--border-color, #3a4155);border-radius:var(--radius-sm, .25rem);box-shadow:0 4px 12px #0000004d;z-index:1000;max-height:300px;display:flex;flex-direction:column;overflow:hidden}.searchable-multi-select-search{display:flex;gap:.5rem;padding:.5rem;border-bottom:1px solid var(--border-color, #3a4155);background-color:var(--bg-tertiary, #252a3a)}.searchable-multi-select-search-input{flex:1;padding:.5rem;background-color:var(--bg-secondary, #1e2332);border:1px solid var(--border-color, #3a4155);border-radius:var(--radius-sm, .25rem);color:var(--text-primary, #ffffff);font-size:.875rem}.searchable-multi-select-search-input:focus{outline:none;border-color:var(--accent-color, #4a5a7a)}.add-new-button{padding:.5rem .75rem;background-color:var(--accent-color, #4a5a7a);color:var(--text-primary, #ffffff);border:none;border-radius:var(--radius-sm, .25rem);cursor:pointer;font-size:.875rem;font-weight:500;white-space:nowrap;transition:background-color var(--transition-normal, .2s)}.add-new-button:hover{background-color:var(--accent-hover, #5a6a8a)}.searchable-multi-select-options{flex:1;overflow-y:auto;max-height:250px}.searchable-multi-select-option{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;cursor:pointer;transition:background-color var(--transition-fast, .15s)}.searchable-multi-select-option:hover{background-color:var(--bg-tertiary, #252a3a)}.searchable-multi-select-option.selected{background-color:#4a5a7a33}.checkbox-indicator{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:1px solid var(--border-color, #3a4155);border-radius:.125rem;background-color:var(--bg-secondary, #1e2332);color:var(--accent-color, #4a5a7a);font-weight:700;font-size:.875rem;flex-shrink:0}.searchable-multi-select-option.selected .checkbox-indicator{background-color:var(--accent-color, #4a5a7a);border-color:var(--accent-color, #4a5a7a);color:var(--text-primary, #ffffff)}.searchable-multi-select-no-results{padding:1rem;text-align:center;color:var(--text-muted, #8b92a7);font-size:.875rem}.searchable-select{position:relative;width:100%}.searchable-select-trigger{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.7rem;font-family:inherit;cursor:pointer;transition:border-color var(--transition-fast);min-height:2rem}.searchable-select-trigger:hover:not(.disabled){border-color:var(--accent-color)}.searchable-select-trigger:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.searchable-select-trigger.disabled{opacity:.5;cursor:not-allowed}.searchable-select.open .searchable-select-trigger{border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.searchable-select.error .searchable-select-trigger{border-color:var(--danger-color)}.searchable-select-value{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchable-select-arrow{margin-left:var(--spacing-sm);display:flex;align-items:center;transition:transform var(--transition-fast);color:var(--text-tertiary)}.searchable-select.open .searchable-select-arrow{transform:rotate(180deg)}.searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-xs);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:1000;max-height:300px;display:flex;flex-direction:column;overflow:hidden}.searchable-select-search{padding:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.searchable-select-search-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.7rem;font-family:inherit}.searchable-select-search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.searchable-select-options{overflow-y:auto;max-height:250px}.searchable-select-option{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast);color:var(--text-primary);font-size:.7rem}.searchable-select-option:hover{background-color:var(--bg-primary)}.searchable-select-option.selected{background-color:var(--accent-color);color:var(--text-on-accent)}.searchable-select-option:focus{outline:none;background-color:var(--bg-primary)}.searchable-select-no-results{padding:var(--spacing-md);text-align:center;color:var(--text-tertiary);font-size:.7rem}.company-form{max-width:800px;max-height:90vh;overflow-y:auto}.company-form .form-section{margin-bottom:2rem}.company-form .form-section h3{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.company-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.company-form .form-group{display:flex;flex-direction:column}.company-form .form-group.full-width{grid-column:1 / -1}.company-form label{margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.company-form input,.company-form select,.company-form textarea{padding:.625rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;transition:all var(--transition-normal)}.company-form input:focus,.company-form select:focus,.company-form textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.company-form input.error,.company-form select.error,.company-form textarea.error{border-color:var(--danger-color)}.company-form .error-message{margin-top:.25rem;font-size:.75rem;color:var(--danger-color)}.company-form .tags-input{display:flex;flex-direction:column;gap:.5rem}.company-form .tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.company-form .tag{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-primary)}.company-form .tag-remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2rem;line-height:1;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-normal)}.company-form .tag-remove:hover{color:var(--danger-color)}.company-form .tag-input-group{display:flex;gap:.5rem}.company-form .tag-input-group input{flex:1}.company-form .btn-add-tag{padding:.625rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:1.2rem;transition:background var(--transition-normal)}.company-form .btn-add-tag:hover{background:var(--primary-color-hover)}.company-form .form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.company-form .btn{padding:.625rem 1.5rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.company-form .btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.company-form .btn-secondary:hover{background:var(--bg-tertiary)}.company-form .btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.company-form .btn-primary:hover{background:var(--primary-color-hover)}.person-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:700px;color:var(--text-secondary)}.person-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.roles-selection{margin-top:var(--spacing-sm)}.roles-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.role-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.role-checkbox:hover{background-color:var(--bg-tertiary)}.role-checkbox input[type=checkbox]{width:auto;margin:0;cursor:pointer}.role-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.role-checkbox span{font-size:.8rem;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.add-role-input{margin-top:var(--spacing-sm)}.document-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:600px;color:var(--text-secondary)}.document-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.form-group textarea{resize:vertical}.file-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;background-color:var(--bg-tertiary);color:var(--text-secondary)}.file-info{padding:var(--spacing-sm);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem}.file-preview{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem}.upload-status{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem;display:flex;flex-direction:column;gap:var(--spacing-sm)}.upload-progress{width:100%;height:4px;background-color:var(--bg-tertiary);border-radius:2px;overflow:hidden}.upload-progress-bar{height:100%;background-color:var(--accent-color);transition:width .3s ease}.communication-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:700px;color:var(--text-secondary)}.communication-form .form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-md)}.communication-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.communication-form .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.communication-form .form-group{margin-bottom:var(--spacing-md)}.communication-form .form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-secondary);font-size:.6rem;text-transform:uppercase;letter-spacing:.03em}.communication-form .form-group input[type=checkbox]{width:auto;margin-right:var(--spacing-xs)}.communication-form .form-group input,.communication-form .form-group select,.communication-form .form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.7rem;font-family:inherit;transition:border-color var(--transition-fast)}.communication-form .form-group input:focus,.communication-form .form-group select:focus,.communication-form .form-group textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.communication-form .form-group textarea{resize:vertical;min-height:80px}.communication-form .form-group input.error,.communication-form .form-group select.error,.communication-form .form-group textarea.error{border-color:var(--danger-color)}.communication-form .error-message{display:block;margin-top:var(--spacing-xs);color:var(--danger-color);font-size:.65rem}.communication-form .form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.communication-form .btn-primary,.communication-form .btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.communication-form .btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.communication-form .btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.communication-form .btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--border-color)}.communication-form .btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover)}.communication-form .btn-primary:disabled,.communication-form .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.task-form{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg);max-width:700px;color:var(--text-secondary)}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-md)}.task-form h2{margin:0;color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-secondary);font-size:.6rem;text-transform:uppercase;letter-spacing:.03em}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.7rem;font-family:inherit;transition:border-color var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--danger-color)}.error-message{display:block;margin-top:var(--spacing-xs);color:var(--danger-color);font-size:.65rem}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.quick-calculator{background-color:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--text-primary);display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.calculator-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color)}.calculator-header h2{font-size:1.2rem;color:var(--text-primary);margin:0}.btn-close{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.btn-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.calculator-content{flex:1;overflow-y:auto;padding:var(--spacing-md)}.calculator-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.input-section,.results-section{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-tertiary)}.input-section h3,.results-section h3{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm);margin-top:0;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-color)}.input-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm) var(--spacing-md)}.form-group{margin-bottom:var(--spacing-sm);background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem;transition:all .2s}.form-group label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem;font-weight:500}.form-group:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.1)}.form-group input{width:100%;padding:.4rem .5rem;border:1px solid transparent;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-primary);font-size:.875rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:transparent}.results-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.result-card{display:flex;flex-direction:column;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-secondary)}.result-card.highlight{border-color:var(--accent-color);border-width:2px}.result-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.result-value{font-size:1rem;font-weight:600;color:var(--text-primary)}.result-value.positive{color:var(--color-green)}.result-value.negative{color:var(--color-red)}.result-value.warning{color:var(--color-yellow)}.result-value.ampel-green{color:var(--color-green)}.result-value.ampel-yellow{color:var(--color-yellow)}.result-value.ampel-red{color:var(--color-red)}.info-icon-wrapper{opacity:.6;transition:opacity .2s,transform .2s;position:relative;z-index:1}.info-icon-wrapper:hover{opacity:1;transform:scale(1.15)}.info-icon-wrapper:focus{outline:2px solid var(--accent-color);outline-offset:2px;border-radius:2px;opacity:1}.info-icon-wrapper svg{pointer-events:none;display:block}.risk-section{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.risk-section h4{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs);margin-top:0}.risk-section ul{list-style:disc;padding-left:var(--spacing-lg);margin:0}.risk-section li{font-size:.875rem;color:var(--text-muted);margin-bottom:var(--spacing-xs)}.calculator-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--border-color);background-color:var(--bg-secondary)}.btn{padding:.5rem 1rem;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background-color:var(--accent-color-dark)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-input)}@media (max-width: 1024px){.calculator-grid{grid-template-columns:1fr}}@media (max-width: 768px){.results-grid{grid-template-columns:1fr}.quick-calculator{max-height:95vh}}.ampel-status{position:relative;padding-bottom:2px}.ampel-status:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:2px;opacity:.7}.ampel-gruen:after{background:linear-gradient(90deg,#22c55e,#4ade80)}.ampel-gelb:after{background:linear-gradient(90deg,#eab308,#facc15)}.ampel-rot:after{background:linear-gradient(90deg,#ef4444,#f87171)}.financing-overview{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.financing-overview,.results-summary{grid-template-columns:1fr!important}}.input-group{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-color)}.input-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.input-group-title{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:.5rem}.input-group-title:before{content:"";width:4px;height:16px;background:var(--accent-color);border-radius:2px}.results-summary{animation:fadeIn .3s ease-in}.results-summary>div{transition:transform .2s,box-shadow .2s}.results-summary>div:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.amortization-schedule{background:var(--bg-secondary);border-radius:8px;padding:1.5rem;margin-top:1rem}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.schedule-header h2{margin:0;color:var(--text-primary);font-size:1.5rem}.schedule-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:var(--bg-primary);padding:1rem;border-radius:6px;text-align:center}.summary-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.summary-value{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.schedule-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1.5rem;padding:1rem;background:var(--bg-primary);border-radius:6px}.schedule-controls label{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem}.schedule-controls input{padding:.5rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;width:100px}.schedule-chart{height:400px;margin-bottom:2rem;background:var(--bg-primary);padding:1rem;border-radius:6px}.schedule-table-container{overflow-x:auto;background:var(--bg-primary);border-radius:6px;padding:1rem}.schedule-table{width:100%;border-collapse:collapse}.schedule-table thead{background:var(--bg-secondary)}.schedule-table th{padding:.75rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.schedule-table td{padding:.75rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.schedule-table tbody tr:hover{background:var(--bg-secondary)}.schedule-table td strong{color:var(--text-primary);font-weight:600}@media (max-width: 768px){.schedule-summary{grid-template-columns:repeat(2,1fr)}.schedule-controls{flex-direction:column;align-items:stretch}.schedule-controls input{width:100%}.schedule-chart{height:300px}}.besichtigungs-checkliste{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.checklist-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.checklist-header h2{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.checklist-subtitle{margin:0;color:var(--text-secondary);font-size:.875rem}.checklist-progress{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs);min-width:200px}.progress-bar{width:200px;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .3s ease}.progress-text{font-size:.75rem;color:var(--text-muted);font-weight:500}.checklist-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.checklist-category{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.checklist-category-title{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:1rem;font-weight:600;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.checklist-items{display:flex;flex-direction:column;gap:var(--spacing-md)}.checklist-item{padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.checklist-item:hover{background:var(--bg-hover)}.checklist-item.mandatory{border-left:3px solid var(--accent-color);padding-left:var(--spacing-md)}.checklist-item-row{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checklist-checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.checklist-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-color)}.checklist-item-label{color:var(--text-primary);font-size:.9rem;flex:1}.checklist-mandatory{color:#ef4444;font-weight:600;margin-left:.25rem}.checklist-text-label,.checklist-number-label,.checklist-select-label{display:flex;flex-direction:column;gap:var(--spacing-xs)}.checklist-text-input,.checklist-number-input,.checklist-select-input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;transition:border-color var(--transition-fast)}.checklist-text-input:focus,.checklist-number-input:focus,.checklist-select-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}.checklist-note{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:.8rem;resize:vertical;min-height:60px;font-family:inherit;transition:border-color var(--transition-fast)}.checklist-note:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}.checklist-note::placeholder{color:var(--text-muted)}.checklist-footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.checklist-error{padding:var(--spacing-lg);text-align:center;color:var(--text-muted)}@media (max-width: 768px){.checklist-header{flex-direction:column;gap:var(--spacing-md)}.checklist-progress{width:100%;align-items:flex-start}.progress-bar{width:100%}.checklist-item-row{gap:var(--spacing-xs)}.checklist-note{font-size:.875rem}}.property-detail{max-width:1200px}.property-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.header-left{display:flex;align-items:center;gap:var(--spacing-md)}.property-header h1{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.header-actions .btn{display:flex;align-items:center;gap:.5rem}.property-tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg);flex-wrap:wrap;overflow-x:visible}.tab{position:relative;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--text-tertiary);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all var(--transition-normal);font-size:.8rem;display:flex;align-items:center;gap:var(--spacing-sm)}.tab:hover{color:var(--text-secondary);background-color:var(--bg-tertiary)}.tab.active{color:var(--text-primary);border-bottom-color:var(--accent-color);font-weight:600}.tab.active .tab-badge{background-color:var(--accent-hover)}.property-content{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-lg);border-radius:var(--radius-lg)}.section-description{color:var(--text-muted);font-size:.875rem;margin-bottom:1.5rem}.content-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.content-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.content-section h2{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.data-item{color:var(--text-secondary);font-size:.8rem}.data-item strong{color:var(--text-primary);margin-right:var(--spacing-sm);font-weight:600}.source-link-item .source-link{display:inline-flex;align-items:center;gap:.375rem;color:var(--accent-color);text-decoration:none;font-weight:500;padding:.25rem .5rem;background:#4a5a7a1a;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.source-link-item .source-link:hover{background:#4a5a7a33;color:var(--accent-light)}.source-link-item .source-link svg{flex-shrink:0}.watchlist-overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.overview-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.overview-card .card-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.overview-card .card-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.overview-card .card-body{padding:var(--spacing-lg)}.finance-card .finance-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0}.finance-card .finance-row .label{color:var(--text-secondary);font-size:.85rem}.finance-card .finance-row .value{font-weight:500;color:var(--text-primary);font-size:.9rem}.finance-card .finance-row.main{padding-bottom:var(--spacing-sm)}.finance-card .finance-row.main .label{font-weight:600;color:var(--text-primary)}.finance-card .finance-row.main .value{font-size:1.1rem;font-weight:700;color:var(--accent-color)}.finance-card .finance-row.sub{padding-left:var(--spacing-md)}.finance-card .finance-row.sub .label{font-size:.8rem;color:var(--text-muted)}.finance-card .finance-row.sub .value{font-size:.85rem;color:var(--text-secondary)}.finance-card .finance-row.total{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px dashed var(--border-color)}.finance-card .finance-row.total .label{font-weight:600;color:var(--text-primary)}.finance-card .finance-row.total .value{font-size:1rem;font-weight:700;color:var(--primary-color)}.finance-card .finance-divider{height:1px;background:var(--border-color);margin:var(--spacing-md) 0}.finance-card .finance-row.highlight{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:#4a5a7a1a;border-radius:var(--radius-sm)}.finance-card .finance-row.highlight .label{font-weight:600}.finance-card .rendite{font-size:1.1rem!important;font-weight:700!important}.finance-card .rendite.good{color:#22c55e!important}.finance-card .rendite.ok{color:#eab308!important}.finance-card .rendite.low{color:#ef4444!important}.details-card .detail-row,.status-card .detail-row,.contact-card .detail-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-color)}.details-card .detail-row:last-child,.status-card .detail-row:last-child,.contact-card .detail-row:last-child{border-bottom:none}.details-card .detail-row .label,.status-card .detail-row .label,.contact-card .detail-row .label{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.details-card .detail-row .value,.status-card .detail-row .value,.contact-card .detail-row .value{color:var(--text-primary);font-weight:500;font-size:.9rem}.status-card .status-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.8rem}@media (max-width: 768px){.status-select{min-height:44px!important;font-size:.875rem!important;padding:.5rem .75rem!important}.status-select option{padding:.5rem;min-height:44px}}.status-card .status-badge.status-interesse{background:#3b82f626;color:#3b82f6}.status-card .status-badge.status-besichtigung{background:#a855f726;color:#a855f7}.status-card .status-badge.status-verhandlung{background:#f9731626;color:#f97316}.status-card .status-badge.status-abgelehnt{background:#ef444426;color:#ef4444}.status-card .source-link,.contact-card .link{display:inline-flex;align-items:center;gap:.375rem;color:var(--accent-color);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.status-card .source-link:hover,.contact-card .link:hover{color:var(--accent-light)}.notes-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--text-secondary);font-size:.9rem;line-height:1.6;white-space:pre-wrap}@media (max-width: 768px){.watchlist-overview-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.overview-card .card-header{padding:var(--spacing-sm) var(--spacing-md)}.overview-card .card-body{padding:var(--spacing-md)}.finance-card .finance-row.main .value{font-size:1rem}}.placeholder-text{color:var(--text-muted);font-style:italic;font-size:.8rem}.section-header h2{margin:0;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-primary)}.units-table,.tenancies-table,.loans-table,.documents-table{margin-top:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.units-table table,.tenancies-table table,.loans-table table,.documents-table table{width:100%;border-collapse:collapse;font-size:.8rem}.units-table thead,.tenancies-table thead,.loans-table thead,.documents-table thead{background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.units-table th,.tenancies-table th,.loans-table th,.documents-table th{padding:.5rem .625rem;text-align:left;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.units-table td,.tenancies-table td,.loans-table td,.documents-table td{padding:.5rem .625rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;background-color:var(--bg-secondary)}.units-table tbody tr,.tenancies-table tbody tr,.loans-table tbody tr,.documents-table tbody tr{transition:background-color var(--transition-fast)}.units-table tbody tr:nth-child(2n),.tenancies-table tbody tr:nth-child(2n),.loans-table tbody tr:nth-child(2n),.documents-table tbody tr:nth-child(2n){background-color:#252a3a4d}.units-table tbody tr:hover,.tenancies-table tbody tr:hover,.loans-table tbody tr:hover,.documents-table tbody tr:hover{background-color:var(--bg-tertiary)}.units-table tbody tr:nth-child(2n):hover,.tenancies-table tbody tr:nth-child(2n):hover,.loans-table tbody tr:nth-child(2n):hover,.documents-table tbody tr:nth-child(2n):hover{background-color:var(--bg-tertiary)}.action-buttons{display:flex;gap:var(--spacing-md);align-items:center}.tenancies-section{margin-bottom:var(--spacing-lg)}.tenancies-section h3{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.tenancies-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.tenancy-card{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-md);border-radius:var(--radius-lg);transition:border-color var(--transition-normal)}.tenancy-card:hover{border-color:var(--border-hover)}.tenancy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.tenancy-header h3{margin:0;color:var(--text-primary);font-size:.8rem;font-weight:600}.tenancy-status{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}.tenancy-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm)}.detail-item{color:var(--text-secondary);font-size:.8rem}.detail-item strong{color:var(--text-primary);margin-right:var(--spacing-sm);font-weight:600}.financing-summary{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.summary-item{color:var(--text-secondary);font-size:.8rem}.summary-item strong{color:var(--text-primary);margin-right:var(--spacing-sm);font-weight:600}.loans-table tbody tr.warning-row{background-color:#5a6b7d33}.warning-badge{margin-left:var(--spacing-sm);font-size:.8rem}.filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.filter-group select{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.documents-table.sortable .sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-normal)}.documents-table.sortable .sortable-header:hover{background-color:var(--bg-tertiary)}.sort-icon{margin-left:.5rem;font-size:.7rem;color:var(--text-muted);opacity:.5}.sort-icon.active{color:var(--accent-color);opacity:1}.document-link{background:none;border:none;padding:0;color:var(--accent-color);cursor:pointer;font-size:inherit;font-family:inherit;text-align:left;text-decoration:none;transition:color var(--transition-normal)}.document-link:hover{color:var(--accent-hover);text-decoration:underline}@media (max-width: 768px){.property-detail{padding:0}.property-header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.header-left{flex-wrap:wrap}.property-header h1{font-size:1rem;word-break:break-word}.header-actions{justify-content:flex-start;flex-wrap:wrap}.property-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--spacing-xs)}.property-tabs::-webkit-scrollbar{display:none}.tab{padding:var(--spacing-sm);font-size:.75rem}.tab-badge{min-width:16px;height:16px;font-size:.6rem}.property-content{padding:var(--spacing-md)}.data-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.data-item{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-color)}.data-item:last-child{border-bottom:none}.data-item strong{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.section-header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.section-header h2{font-size:.85rem}.units-grid,.loans-grid{grid-template-columns:1fr}.tenancies-table,.documents-table,.loans-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.tenancies-table table,.documents-table table,.loans-table table{min-width:600px}}@media (max-width: 480px){.property-header h1{font-size:.9rem}.tab{padding:var(--spacing-xs) var(--spacing-sm);font-size:.7rem}.property-content{padding:var(--spacing-sm);border-radius:var(--radius-md)}}.tenants-page{max-width:1400px}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:2rem}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:var(--radius-md);display:flex;align-items:center;gap:.75rem;transition:all var(--transition-normal)}.stat-icon{color:var(--text-muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-content{flex:1}.stat-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:500;margin-top:.25rem}.stat-value{font-size:1.25rem;font-weight:600;color:var(--text-primary);line-height:1.2}.filter-group select,.filter-group input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--border-hover)}.persons-table{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.persons-table table{width:100%;border-collapse:collapse;font-size:.8rem}.persons-table thead{background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.persons-table th{padding:.5rem .625rem;text-align:left;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.persons-table td{padding:.5rem .625rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;background-color:var(--bg-secondary)}.persons-table tbody tr{transition:background-color var(--transition-fast)}.persons-table tbody tr:nth-child(2n){background-color:#252a3a4d}.persons-table tbody tr:hover{background-color:var(--bg-tertiary)}.persons-table tbody tr:nth-child(2n):hover{background-color:var(--bg-tertiary)}.role-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}.person-avatar{flex-shrink:0}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.status-badge.status-active{background-color:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.status-inactive{background-color:#94a3b826;color:#94a3b8;border:1px solid rgba(148,163,184,.3)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;text-decoration:none}.btn-icon:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.btn-icon svg{stroke:currentColor}.tenants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.tenant-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;transition:all var(--transition-normal)}.tenant-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.tenant-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.tenant-card-avatar{width:48px;height:48px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;border:1px solid var(--border-color)}.tenant-card-body{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.875rem}.tenant-card-info{display:flex;gap:.5rem}.tenant-card-info strong{color:var(--text-muted);min-width:100px}.tenant-card-actions{display:flex;gap:.5rem;justify-content:flex-end}.tenants-compact{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.tenant-compact-row{display:grid;grid-template-columns:30px 1fr 1.5fr 120px 100px auto;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);align-items:center;font-size:.875rem}.tenant-compact-row:last-child{border-bottom:none}.tenant-compact-row:hover{background:var(--bg-tertiary)}.tenant-compact-row input[type=checkbox]{cursor:pointer}.persons-table input[type=checkbox],.tenants-compact input[type=checkbox],.sortable-table input[type=checkbox],.sortable-table-wrapper input[type=checkbox]{width:18px;height:18px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:2px solid var(--border-color);border-radius:var(--radius-sm);background:transparent!important;position:relative;transition:all var(--transition-fast);margin:0}.persons-table input[type=checkbox]:hover,.tenants-compact input[type=checkbox]:hover,.sortable-table input[type=checkbox]:hover,.sortable-table-wrapper input[type=checkbox]:hover{border-color:var(--accent-color);background:#6366f11a!important}.persons-table input[type=checkbox]:checked,.tenants-compact input[type=checkbox]:checked,.sortable-table input[type=checkbox]:checked,.sortable-table-wrapper input[type=checkbox]:checked{background:var(--accent-color)!important;border-color:var(--accent-color)}.persons-table input[type=checkbox]:checked:after,.tenants-compact input[type=checkbox]:checked:after,.sortable-table input[type=checkbox]:checked:after,.sortable-table-wrapper input[type=checkbox]:checked:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.btn-icon.btn-danger{color:var(--danger-color, #ef4444)}.btn-icon.btn-danger:hover{background:#ef444426;border-color:#ef44444d;color:#ef4444}.btn-icon.btn-danger svg{display:block;stroke:currentColor;fill:none}@media (max-width: 768px){.tenants-page{padding:0}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1.1rem}.filters{flex-direction:column;gap:var(--spacing-sm)}.filter-group{width:100%;flex-direction:column;align-items:stretch}.filter-group input{min-width:100%}.persons-table{display:none}.tenants-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.tenant-card{padding:var(--spacing-md)}.tenant-card-header{margin-bottom:var(--spacing-sm)}.tenant-compact-row{grid-template-columns:30px 1fr auto;gap:var(--spacing-sm);padding:var(--spacing-sm)}.tenant-compact-row>*:not(:first-child):not(:nth-child(2)):not(:last-child){display:none}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-sm)}.stat-value{font-size:1rem}.stat-label{font-size:.6rem}.action-buttons{gap:var(--spacing-sm)}.btn-icon{width:36px;height:36px}.view-mode-toggle{display:none}.tenants-page .sortable-table-wrapper{border-radius:var(--radius-md)}.tenants-page .sortable-table{min-width:450px}.tenants-page .sortable-table th:nth-child(4),.tenants-page .sortable-table td:nth-child(4),.tenants-page .sortable-table th:nth-child(5),.tenants-page .sortable-table td:nth-child(5){display:none}.tenants-page .sortable-table th,.tenants-page .sortable-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}.tenants-compact{overflow-x:auto;-webkit-overflow-scrolling:touch}.tenants-compact th:nth-child(4),.tenants-compact td:nth-child(4),.tenants-compact th:nth-child(5),.tenants-compact td:nth-child(5){display:none}}.inspection-form{background:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:90vh}.form-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.form-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.btn-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center}.btn-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.form-body{padding:var(--spacing-md);overflow-y:auto;flex:1}.form-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.form-section:last-child{border-bottom:none}.form-section h3{margin:0 0 var(--spacing-md) 0;font-size:.875rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header h3{margin:0}.btn-add{padding:.375rem .75rem;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-add:hover{background:var(--bg-hover);border-color:var(--border-hover)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.form-group label{font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.form-group input,.form-group select,.form-group textarea{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;transition:all var(--transition-normal)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #6366f11a}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.form-group textarea{resize:vertical;font-family:inherit}.form-group-actions{display:flex;align-items:flex-end;padding-bottom:.5rem}.btn-remove{width:32px;height:32px;border:1px solid var(--border-color);background:#ef44441a;color:#ef4444;border-radius:var(--radius-sm);cursor:pointer;font-size:1.25rem;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center}.btn-remove:hover{background:#ef444433;border-color:#ef44444d}.array-item{padding:var(--spacing-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.form-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--border-color)}.btn-primary,.btn-secondary{padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);border:none}.btn-primary{background:var(--accent-color);color:#fff}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.inspections-page{max-width:1400px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:var(--radius-md);text-align:center;transition:all var(--transition-normal)}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.filters-section{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.filter-select,.filter-input{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #6366f11a}.inspections-list{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--border-color)}.inspection-type-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;background:var(--bg-tertiary);color:var(--text-primary)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.status-badge.status-success{background:#22c55e33;color:#22c55e}.status-badge.status-info{background:#0ea5e933;color:#0ea5e9}.status-badge.status-warning{background:#f9731633;color:#f97316}.status-badge.status-default{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal)}.btn-icon:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-icon.btn-danger:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.link{color:var(--accent-color);text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}.inspection-modal{max-width:900px;max-height:90vh;overflow-y:auto}.toggle-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-wrapper.disabled{opacity:.5;cursor:not-allowed}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:relative;display:inline-block;width:44px;height:24px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:24px;transition:background-color var(--transition-normal),border-color var(--transition-normal);flex-shrink:0}.toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;background-color:var(--text-secondary);border-radius:50%;transition:transform var(--transition-normal),background-color var(--transition-normal)}.toggle-input:checked+.toggle-slider{background-color:var(--accent-color);border-color:var(--accent-color)}.toggle-input:checked+.toggle-slider:before{transform:translate(20px);background-color:var(--bg-primary)}.toggle-input:focus+.toggle-slider{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.toggle-input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-label{font-size:.75rem;color:var(--text-secondary);cursor:pointer}.toggle-wrapper.disabled .toggle-label{cursor:not-allowed}.documents-page{max-width:1400px}.page-header h1{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.search-box{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.search-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.search-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-secondary);transition:border-color var(--transition-normal)}.search-input:focus{outline:none;border-color:var(--border-hover)}.search-input::placeholder{color:var(--text-muted)}.search-loading{font-size:.75rem;color:var(--text-muted);font-style:italic}.search-content-toggle{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid transparent;transition:background-color var(--transition-normal),border-color var(--transition-normal)}.search-content-toggle.active{background-color:#4a5a7a26;border-color:var(--accent-color)}.toggle-active-badge{font-size:.7rem;font-weight:600;color:var(--accent-color);background-color:#4a5a7a33;padding:.25rem .5rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.search-content-toggle.active .toggle-label{font-weight:600;color:var(--text-primary)}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-md);border-radius:var(--radius-lg)}.filter-group label{font-weight:500;color:var(--text-secondary);white-space:nowrap;font-size:.6rem;text-transform:uppercase;letter-spacing:.03em}.filter-group select{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;background-color:var(--bg-tertiary);color:var(--text-secondary);min-width:150px;transition:border-color var(--transition-normal)}.filter-group select:focus{outline:none;border-color:var(--border-hover)}.document-title-link{text-align:left;padding:0;font-weight:500;color:var(--accent-color);text-decoration:none;transition:color var(--transition-normal)}.document-title-link:hover{color:var(--accent-hover);text-decoration:underline}.documents-table thead{background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.documents-table th{padding:.5rem .625rem;text-align:left;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.documents-table td{padding:.5rem .625rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;background-color:var(--bg-secondary)}.documents-table tbody tr{transition:background-color var(--transition-fast)}.documents-table tbody tr:nth-child(2n){background-color:#252a3a4d}.documents-table tbody tr:hover{background-color:var(--bg-tertiary)}.documents-table tbody tr:nth-child(2n):hover{background-color:var(--bg-tertiary)}.category-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}.action-buttons{display:flex;gap:1rem;align-items:center}.link{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal)}.link:hover{color:var(--text-primary);text-decoration:underline}@media (max-width: 768px){.documents-page{padding:0}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1.1rem}.search-box{padding:var(--spacing-sm)}.search-input-wrapper{flex-direction:column;align-items:stretch}.search-content-toggle{justify-content:space-between}.filters{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm)}.filter-group{width:100%;flex-direction:column;align-items:stretch}.filter-group select{min-width:100%}.documents-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.documents-table table{min-width:450px}.documents-table th:nth-child(4),.documents-table td:nth-child(4),.documents-table th:nth-child(5),.documents-table td:nth-child(5){display:none}.documents-table th,.documents-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}.documents-page .sortable-table{min-width:450px}.documents-page .sortable-table th:nth-child(4),.documents-page .sortable-table td:nth-child(4),.documents-page .sortable-table th:nth-child(5),.documents-page .sortable-table td:nth-child(5){display:none}.action-buttons{gap:var(--spacing-sm)}}@media (max-width: 768px) and (orientation: landscape){.documents-table table{min-width:500px}}.tasks-page{padding:var(--spacing-lg);color:var(--text-primary)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.page-header h1{margin:0;font-size:1.2rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em}.tasks-alerts{margin-bottom:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.alert{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:.75rem}.alert-danger{background:#e5737333;border:1px solid var(--danger-color);color:var(--danger-color)}.alert-warning{background:#ffc10733;border:1px solid #ffc107;color:#ffc107}.filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-group label{font-size:.7rem;color:var(--text-secondary);white-space:nowrap}.filter-group select,.filter-group input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.7rem;font-family:inherit;transition:border-color var(--transition-fast)}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 var(--focus-ring-offset) var(--focus-ring)}.filter-group input{min-width:200px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-lg);max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.status-offen{background:#ffc10733;color:#ffc107}.status-in_bearbeitung{background:#2196f333;color:#2196f3}.status-erledigt{background:#4caf5033;color:#4caf50}.category-badge{display:inline-block;padding:.25rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.65rem;color:var(--text-secondary)}.overdue{color:var(--danger-color);font-weight:500}.overdue-badge{color:var(--danger-color);font-size:.65rem}.btn-link{background:none;border:none;color:var(--accent-color);cursor:pointer;font-size:.7rem;padding:0;text-decoration:underline;transition:color var(--transition-fast)}.btn-link:hover{color:var(--accent-hover)}.btn-link.btn-danger{color:var(--danger-color)}.btn-link.btn-danger:hover{color:var(--danger-hover)}.btn-primary{padding:var(--spacing-sm) var(--spacing-lg);background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast);font-family:inherit}.btn-primary:hover{background:var(--btn-primary-hover)}@media (max-width: 768px){.tasks-page{padding:var(--spacing-sm)}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1rem}.tasks-alerts{gap:var(--spacing-xs)}.alert{padding:var(--spacing-xs) var(--spacing-sm);font-size:.7rem}.filters{flex-direction:column;gap:var(--spacing-sm);background:var(--bg-secondary);padding:var(--spacing-sm);border-radius:var(--radius-md);border:1px solid var(--border-color)}.filter-group{width:100%;flex-direction:column;align-items:stretch;gap:var(--spacing-xs)}.filter-group input{min-width:100%}.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.action-buttons{flex-wrap:wrap}.btn-link{font-size:.75rem;padding:var(--spacing-xs)}.status-badge,.category-badge{font-size:.6rem;padding:.2rem .4rem}.tasks-page .sortable-table-wrapper{margin:0 calc(-1 * var(--spacing-sm));border-radius:0;border-left:none;border-right:none}.tasks-page .sortable-table{min-width:550px}.tasks-page .sortable-table th:nth-child(5),.tasks-page .sortable-table td:nth-child(5){display:none}.tasks-page .sortable-table th,.tasks-page .sortable-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}}@media (max-width: 768px) and (orientation: landscape){.modal-content{max-height:95vh}}.calendar-event-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.calendar-event-form{background:var(--bg-primary);border-radius:8px;padding:2rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.form-header h2{margin:0;color:var(--text-primary)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;font-size:1rem}.form-group textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}@media (max-width: 768px){.calendar-event-form{width:95%;padding:1.5rem}.form-row{grid-template-columns:1fr}}.calendar-page{max-width:1400px}.calendar-page .page-header{margin-bottom:var(--spacing-lg)}.calendar-page .page-header h1{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.webcal-info-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.webcal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.webcal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.webcal-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.webcal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.webcal-content{display:flex;flex-direction:column;gap:1.5rem}.webcal-description{margin:0;color:var(--text-secondary);line-height:1.6}.webcal-url-box{display:flex;flex-direction:column;gap:.5rem}.webcal-url-box label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.webcal-url-input-group{display:flex;gap:.5rem;align-items:stretch}.webcal-url-input{flex:1;padding:.625rem .875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:Courier New,monospace;cursor:text}.webcal-url-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.webcal-copy-btn{white-space:nowrap;padding:.625rem 1rem}.webcal-instructions{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem}.webcal-instructions h4{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:var(--text-primary)}.webcal-instructions ol{margin:0 0 1.5rem;padding-left:1.5rem;color:var(--text-secondary);line-height:1.8}.webcal-instructions ol:last-child{margin-bottom:0}.webcal-instructions li{margin-bottom:.5rem}.webcal-token-hint,.webcal-token-success{margin:.75rem 0 0;padding:.75rem;border-radius:var(--radius-sm);font-size:.875rem;line-height:1.5}.webcal-token-hint{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);color:var(--text-secondary)}.webcal-token-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:var(--text-secondary)}@media (max-width: 768px){.webcal-url-input-group{flex-direction:column}.webcal-copy-btn{width:100%}}.calendar-layout{display:grid;grid-template-columns:1fr 320px;gap:1.5rem}@media (max-width: 1024px){.calendar-layout{grid-template-columns:1fr}}.calendar-main{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.calendar-nav h2{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.today-btn{margin-bottom:1rem}.calendar-loading{text-align:center;padding:3rem;color:var(--text-muted)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background:var(--border-color);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.calendar-header-cell{background:var(--bg-primary);padding:.75rem;text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.calendar-cell{background:var(--bg-primary);min-height:80px;padding:.5rem;position:relative;cursor:default}.calendar-cell.has-day{cursor:pointer;transition:background var(--transition-fast)}.calendar-cell.has-day:hover{background:var(--bg-hover)}.calendar-cell.today{background:#6366f11a}.calendar-cell.today .day-number{background:var(--primary-color);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.calendar-cell.selected{background:#6366f126;box-shadow:inset 0 0 0 2px var(--primary-color)}.day-number{font-size:.875rem;font-weight:500;color:var(--text-primary)}.event-dots{display:flex;gap:3px;margin-top:.5rem;flex-wrap:wrap}.event-dot{width:12px;height:12px;border-radius:50%;min-width:12px;min-height:12px;display:inline-block;box-shadow:0 0 4px #6366f180}.event-more{font-size:.65rem;color:var(--text-muted)}.calendar-legend{display:flex;gap:1.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.calendar-legend .legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%}.calendar-sidebar{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;height:fit-content}.calendar-sidebar h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.no-events{color:var(--text-muted);font-style:italic;font-size:.875rem}.events-list{display:flex;flex-direction:column;gap:.75rem}.event-card{display:flex;gap:.75rem;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.event-type-indicator{width:4px;border-radius:2px;flex-shrink:0}.event-content{flex:1;min-width:0}.event-type-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem}.event-title{font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.event-time{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem;font-weight:500}.event-status{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.event-link{font-size:.75rem;color:var(--primary-color);text-decoration:none;display:inline-block;margin-top:.5rem}.event-link:hover{text-decoration:underline}@media (max-width: 768px){.calendar-page{padding:0}.calendar-page .page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.calendar-page .page-header h1{font-size:1.1rem}.calendar-page .page-header>div{flex-wrap:wrap;gap:var(--spacing-xs)}.calendar-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.calendar-nav h2{font-size:1rem}.calendar-nav button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8rem}.today-btn{font-size:.75rem}.calendar-grid{gap:2px}.calendar-header-cell{font-size:.6rem;padding:var(--spacing-xs)}.calendar-cell{min-height:50px;padding:2px}.day-number{font-size:.75rem}.event-dots{gap:2px}.event-dot{width:5px;height:5px}.event-more{font-size:.5rem}.calendar-legend{flex-wrap:wrap;gap:var(--spacing-sm)}.calendar-legend .legend-item{font-size:.7rem}.legend-dot{width:8px;height:8px}.calendar-sidebar{padding:var(--spacing-md)}.calendar-sidebar h3{font-size:.9rem}.event-card{padding:var(--spacing-sm)}.event-title{font-size:.8rem}.event-type-label{font-size:.55rem}}@media (max-width: 768px) and (orientation: landscape){.calendar-layout{grid-template-columns:2fr 1fr}.calendar-cell{min-height:40px}}.stats-page{max-width:1400px}.stats-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.stats-page .page-header h1{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.year-select{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}@media (max-width: 1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;transition:all var(--transition-normal)}.kpi-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.kpi-card.highlight{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border-color:#22c55e4d}.kpi-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.kpi-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.kpi-value.negative{color:var(--danger-color)}.kpi-subtext{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}@media (max-width: 1024px){.charts-grid{grid-template-columns:1fr}}.chart-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.chart-card.wide{grid-column:1 / -1}.chart-card h3{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.chart-container{height:250px;position:relative}.chart-container.tall{height:300px}.no-data{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-style:italic}.chart-legend{display:flex;justify-content:center;gap:2rem;margin-top:1rem;font-size:.8rem}.legend-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.legend-item .dot{width:12px;height:12px;border-radius:3px}.legend-item .dot.green{background:#22c55ecc}.legend-item .dot.red{background:#ef4444cc}.export-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.export-section h2{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.export-description{color:var(--text-muted);font-size:.875rem;margin-bottom:1rem}.export-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.export-buttons .btn{display:flex;align-items:center;gap:.5rem}.notes-editor{display:flex;flex-direction:column;gap:1rem}.notes-header{display:flex;gap:1rem;align-items:center}.notes-search{flex:1}.notes-search input{width:100%;padding:.625rem 1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem}.notes-search input:focus{outline:none;border-color:var(--primary-color)}.notes-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;min-height:400px}@media (max-width: 900px){.notes-layout{grid-template-columns:1fr}}.notes-list{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.no-notes{color:var(--text-muted);font-style:italic;text-align:center;padding:2rem}.note-card{position:relative;padding:1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.note-card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.note-card.selected{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}.note-card.yellow{background:#facc151a;border-color:#facc154d}.note-card.green{background:#22c55e1a;border-color:#22c55e4d}.note-card.blue{background:#3b82f61a;border-color:#3b82f64d}.note-card.red{background:#ef44441a;border-color:#ef44444d}.note-card.purple{background:#a855f71a;border-color:#a855f74d}.note-card h4{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:var(--text-primary);padding-right:2rem}.note-preview{margin:0;font-size:.8rem;color:var(--text-secondary);line-height:1.4}.note-date{display:block;margin-top:.5rem;font-size:.7rem;color:var(--text-muted)}.pin-icon{position:absolute;top:.5rem;right:2rem;font-size:.875rem}.note-delete{position:absolute;top:.5rem;right:.5rem;background:none;border:none;padding:.25rem;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.note-card:hover .note-delete{opacity:.7}.note-delete:hover{opacity:1!important}.note-editor-panel{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.editor-header{display:flex;gap:1rem;align-items:center}.title-input{flex:1;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;font-weight:600}.title-input:focus{outline:none;border-color:var(--primary-color)}.editor-options{display:flex;gap:.5rem;align-items:center}.pin-btn{padding:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;font-size:1rem;opacity:.5;transition:all var(--transition-fast)}.pin-btn.active{opacity:1;background:#6366f11a;border-color:var(--primary-color)}.color-select{padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.8rem}.content-input{min-height:150px;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:Monaco,Consolas,monospace;line-height:1.6;resize:none}.content-input:focus{outline:none;border-color:var(--primary-color)}.editor-preview{padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.editor-preview h5{margin:0 0 .5rem;font-size:.7rem;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em}.preview-content{font-size:.875rem;color:var(--text-primary);line-height:1.6}.preview-content h1,.preview-content h2,.preview-content h3{margin:.5rem 0;color:var(--text-primary)}.preview-content h1{font-size:1.25rem}.preview-content h2{font-size:1.1rem}.preview-content h3{font-size:1rem}.preview-content code{padding:.125rem .375rem;background:#6366f11a;border-radius:var(--radius-sm);font-family:Monaco,Consolas,monospace;font-size:.8rem}.preview-content ul{margin:.5rem 0;padding-left:1.5rem}.preview-content li{margin:.25rem 0}.editor-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.notes-page{max-width:1200px}.notes-page .page-header{margin-bottom:var(--spacing-lg)}.notes-page .page-header h1{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.page-description{color:var(--text-muted);font-size:.875rem}.notes-tips{margin-top:2rem;padding:1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.notes-tips h3{margin:0 0 .75rem;font-size:.9rem;font-weight:600;color:var(--text-primary)}.notes-tips ul{margin:0;padding-left:1.25rem}.notes-tips li{margin:.5rem 0;font-size:.85rem;color:var(--text-secondary)}.notes-tips li strong{color:var(--text-primary)}.settings-page{max-width:1200px}.settings-tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg);overflow-x:auto}.settings-tab{position:relative;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--text-tertiary);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all var(--transition-normal);font-size:.8rem;display:flex;align-items:center;gap:var(--spacing-sm)}.settings-tab:hover{color:var(--text-secondary);background-color:var(--bg-tertiary)}.settings-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-color);font-weight:600}.settings-tab-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md)}.settings-page h1{margin-bottom:var(--spacing-lg);color:var(--text-primary);font-weight:600;font-size:1.25rem}.settings-page h2{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-sm);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.settings-page h3{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);color:var(--text-primary);font-weight:600;font-size:.8rem}.settings-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.section-description{color:var(--text-tertiary);margin-bottom:1rem;line-height:1.6}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.stat-item{display:flex;justify-content:space-between;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;border-left:3px solid var(--border-hover)}.stat-label{font-weight:500;color:var(--text-tertiary);font-size:.6rem;text-transform:uppercase;letter-spacing:.03em}.stat-value{font-weight:600;color:var(--text-primary);font-size:1.25rem}.backup-section,.restore-section{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.file-input-wrapper{margin:1rem 0}.file-input{display:none}.file-input-label{display:inline-block;padding:.375rem .75rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);font-weight:500;font-size:.8rem}.file-input-label:hover{background:var(--btn-primary-hover);border-color:var(--border-hover)}.file-input:disabled+.file-input-label{opacity:.5;cursor:not-allowed}.backup-info{margin-top:1rem;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px}.backup-info h4{margin-top:0;margin-bottom:.75rem;color:var(--text-primary);font-weight:600}.backup-info ul{list-style:none;padding:0;margin:0 0 1rem}.backup-info li{padding:.25rem 0;color:var(--text-secondary)}.message{margin-top:1rem;padding:1rem;border-radius:4px;font-weight:500}.message-success{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-hover)}.message-error{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.info-box{padding:1rem;background:var(--bg-secondary);border-left:4px solid var(--border-hover);border-radius:4px;color:var(--text-secondary);line-height:1.6;border:1px solid var(--border-color);border-left-width:4px}.placeholder-text{color:var(--text-muted);font-style:italic}.migration-status{margin-bottom:var(--spacing-md)}.status-indicator{padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:500;display:inline-block}.status-indicator.connected{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-indicator.disconnected{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.status-indicator.checking{background:#eab3081a;color:#eab308;border:1px solid rgba(234,179,8,.3)}.migration-stats{margin-bottom:var(--spacing-md)}.stats-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-sm)}.stats-table th,.stats-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}.stats-table th{background:var(--bg-tertiary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-tertiary)}.stats-table td{color:var(--text-primary)}.migration-actions{margin:var(--spacing-md) 0}.warning-text{color:#ef4444;margin-top:var(--spacing-sm);font-size:.875rem}.info-text{color:var(--text-tertiary);margin-top:var(--spacing-sm);font-size:.875rem}.migration-progress{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md)}.migration-progress h4{margin:0 0 var(--spacing-sm) 0;font-size:.875rem}.progress-bar{height:8px;background:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-xs)}.progress-fill{height:100%;background:var(--btn-primary-bg);transition:width .3s ease}.migration-result{margin-top:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md)}.migration-result.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3)}.migration-result.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.migration-result h4{margin:0 0 var(--spacing-sm) 0}.table-result{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm)}.error-list{margin:var(--spacing-xs) 0 0 var(--spacing-md);padding:0;font-size:.8rem;color:#ef4444}.error-list li{margin-bottom:.25rem}.logo-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.logo-option{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-secondary);cursor:pointer;transition:all var(--transition-normal)}.logo-option:hover{border-color:var(--accent-color);background-color:var(--bg-tertiary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.logo-option.selected{border-color:var(--accent-color);background-color:var(--bg-tertiary);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2)}.logo-preview{display:flex;align-items:center;justify-content:center;width:100px;height:100px;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.logo-name{font-size:.75rem;color:var(--text-secondary);text-align:center;font-weight:500}.logo-checkmark{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:24px;height:24px;background-color:var(--accent-color);color:var(--text-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.email-settings .loading-state{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-muted);padding:var(--spacing-lg)}.email-config-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.email-config-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media (max-width: 640px){.email-config-form .form-row{grid-template-columns:1fr}}.email-config-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.email-config-form label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.email-config-form input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:border-color var(--transition-fast)}.email-config-form input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.email-config-form input::placeholder{color:var(--text-muted)}.email-config-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.email-config-actions .btn{display:flex;align-items:center;gap:var(--spacing-xs)}.email-status{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:.875rem;font-weight:500}.email-status.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.email-status.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.users-page{max-width:1200px}.users-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.users-page .page-header h1{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.users-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.users-table th{background:var(--bg-tertiary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.users-table td{font-size:.875rem;color:var(--text-secondary)}.users-table tr:last-child td{border-bottom:none}.users-table tr.inactive{opacity:.6}.role-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.role-admin{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.role-user{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.role-viewer{background:#9ca3af26;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600}.status-badge.active{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.inactive{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.action-buttons{display:flex;gap:var(--spacing-sm)}.btn-link{background:none;border:none;padding:.25rem .5rem;color:var(--accent-color);cursor:pointer;font-size:.8rem;transition:color var(--transition-normal)}.btn-link:hover{color:var(--accent-hover);text-decoration:underline}.btn-link.btn-danger:hover{color:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:480px;width:100%;max-height:90vh;overflow-y:auto}.modal-content h2{margin:0 0 var(--spacing-lg) 0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-group .hint{font-weight:400;color:var(--text-muted);font-size:.75rem}.form-group input,.form-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #6366f133}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.loading{padding:var(--spacing-xl);text-align:center;color:var(--text-muted)}.tenants-management-page{padding:2rem;max-width:1600px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-value{font-size:1.75rem;font-weight:600;color:var(--text-primary)}.stat-label{font-size:.75rem;color:var(--text-muted);margin-top:.25rem;text-transform:uppercase}.tenants-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.tenants-table{width:100%;border-collapse:collapse}.tenants-table th{background:var(--bg-tertiary);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;border-bottom:1px solid var(--border-color)}.tenants-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary)}.tenants-table tr:hover{background:var(--bg-tertiary)}.tenants-table tr.inactive{opacity:.5}.tenant-name{font-weight:600;color:var(--text-primary)}.tenant-id{font-size:.75rem;color:var(--text-muted);font-family:monospace}.email{font-size:.85rem;color:var(--text-secondary)}.plan-badge{display:inline-block;padding:.3rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.usage{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.status-toggle,.api-toggle{padding:.4rem .8rem;border:none;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s}.status-toggle.active{background:var(--bg-tertiary);color:var(--text-primary)}.status-toggle.inactive,.api-toggle{background:var(--bg-secondary);color:var(--text-muted)}.api-toggle.enabled{background:var(--bg-tertiary);color:var(--text-primary)}.actions{display:flex;gap:.5rem}.btn-icon{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.4rem .6rem;cursor:pointer;transition:all var(--transition-normal)}.btn-icon:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-icon.danger:hover{background:var(--bg-tertiary)}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-primary:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.modal-content h2{margin:0 0 1.5rem;color:var(--text-primary)}.form-section h3{margin:0 0 1rem;font-size:.9rem;color:var(--text-muted)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select{padding:.625rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--border-hover)}.access-denied{text-align:center;padding:4rem;font-size:1.2rem;color:var(--text-muted)}.donation-section{margin-top:2rem;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.donation-section p{margin:0 0 1rem;color:var(--text-muted);font-size:.875rem}.paypal-button{display:inline-block;padding:.5rem 1.5rem;background:var(--bg-primary);color:var(--text-secondary);text-decoration:none;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;transition:all var(--transition-normal)}.paypal-button:hover{background:var(--bg-tertiary);border-color:var(--border-hover);color:var(--text-primary)}.action-menu{position:relative;display:inline-block}.action-menu-trigger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}@media (max-width: 768px){.action-menu-trigger{width:44px;height:44px;min-width:44px;min-height:44px}.action-menu-trigger svg{width:20px;height:20px}.action-menu-item{min-height:44px;padding:.75rem 1rem;font-size:.875rem}.action-menu-dropdown{min-width:200px}}.action-menu-trigger:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.action-menu-trigger:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.action-menu-dropdown{position:absolute;top:calc(100% + .25rem);right:0;z-index:1000;min-width:160px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;overflow:hidden;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.action-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;color:var(--text-secondary);font-size:.8rem;text-align:left;cursor:pointer;transition:background-color var(--transition-fast)}.action-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.action-menu-item:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.action-menu-item.danger{color:#ef4444}.action-menu-item.danger:hover{background:#ef44441a;color:#ef4444}.action-menu-icon{display:flex;align-items:center;width:16px;height:16px}@media (min-width: 769px){.action-menu{display:none}}@media (max-width: 768px){.action-buttons-compact{display:none}.action-menu{display:inline-block}}.watchlist-page{max-width:1400px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.view-mode-toggle{display:flex;gap:.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.25rem}.view-mode-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.view-mode-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.view-mode-btn.active{background:var(--primary-color);color:#fff}.page-header h1{margin:0;color:var(--text-primary);font-size:1.5rem}.watchlist-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.watchlist-tab{padding:.75rem 1.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-normal)}.watchlist-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.watchlist-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:transparent}.archive-search-container{margin-bottom:1.5rem}.archive-search-box{display:flex;align-items:center;gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem 1rem;max-width:500px}.archive-search-box svg{color:var(--text-muted);flex-shrink:0}.archive-search-input{flex:1;border:none;background:transparent;color:var(--text-primary);font-size:.95rem;outline:none}.archive-search-input::placeholder{color:var(--text-muted)}.archive-search-clear{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:50%;cursor:pointer;font-size:1.2rem;line-height:1;transition:all var(--transition-normal)}.archive-search-clear:hover{background:var(--bg-primary);color:var(--text-primary)}.btn-action.btn-restore{flex:1}.btn-action.btn-restore:hover{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.page-header .subtitle{margin:.25rem 0 0;color:var(--text-muted);font-size:.875rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary)}.btn:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-primary{background:var(--bg-tertiary)}.watchlist-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;text-align:center}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;margin-top:.25rem}.watchlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.watchlist-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;text-decoration:none;color:inherit;transition:all var(--transition-normal);display:flex;flex-direction:column}.watchlist-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.card-header{margin-bottom:.75rem}.card-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.card-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3;flex:1}.card-header-meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.source-link-header{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-sm);color:#60a5fa;font-size:.75rem;font-weight:500;text-decoration:none;transition:all var(--transition-normal);white-space:nowrap}.source-link-header:hover{background:#3b82f633;border-color:#3b82f666;color:#3b82f6;transform:translateY(-1px)}.status-badge{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;text-transform:uppercase;white-space:nowrap;background:var(--bg-tertiary);color:var(--text-secondary)}.status-badge.interesse{color:var(--text-primary)}.status-badge.besichtigung{background:#3b82f626;color:#60a5fa}.status-badge.verhandlung{background:#a855f726;color:#c084fc}.status-badge.abgelehnt{opacity:.5}.card-body{flex:1;display:flex;flex-direction:column;gap:.75rem}.card-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:.25rem}.highlight-item{display:flex;flex-direction:column;gap:.25rem;text-align:center}.highlight-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;font-weight:500}.highlight-value{font-size:.95rem;font-weight:600;color:var(--text-primary)}.highlight-item.highlight-price .highlight-value{color:#3b82f6}.highlight-item.highlight-invest .highlight-value{color:#6366f1}.highlight-item.highlight-rendite .highlight-value{font-size:.85rem}.card-address{display:flex;flex-direction:column;font-size:.8rem;color:var(--text-secondary);flex:1}.card-details .detail{display:flex;flex-direction:column}.card-details .label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase}.card-details .value{font-size:.85rem;font-weight:500;color:var(--text-primary)}.card-details .value.highlight{color:#22c55e;font-weight:600}.price-per-sqm{font-weight:600;color:#22c55e}.text-muted{color:var(--text-muted)}.rendite{font-weight:600;padding:.125rem .375rem;border-radius:var(--radius-sm)}.rendite-good{color:#22c55e;background:#22c55e1a}.rendite-medium{color:#eab308;background:#eab3081a}.rendite-bad{color:#ef4444;background:#ef44441a}.field-hint{font-size:.75rem;color:#22c55e;margin-top:.25rem;font-weight:500}.nebenkosten-grid{grid-template-columns:repeat(3,1fr)}.field-calc{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem;display:block}.nebenkosten-summary{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem;margin-top:.5rem}.summary-row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary);padding:.25rem 0}.summary-row.total{border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.5rem;font-weight:600;color:var(--text-primary);font-size:1rem}.gesamtinvest{font-weight:500;color:var(--text-primary)}.card-details{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem 1rem}@media (max-width: 768px){.nebenkosten-grid{grid-template-columns:1fr}.card-details{grid-template-columns:repeat(2,1fr)}}.interest-rating{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.interest-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.interest-rating svg{width:14px;height:14px;color:#f59e0b}.source-link{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-secondary);text-decoration:none;margin-top:auto;padding-top:.5rem;border-top:1px solid var(--border-color)}.source-link:hover{color:var(--text-primary)}.expose-link-table{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-sm);color:#60a5fa;font-size:.8rem;font-weight:500;text-decoration:none;transition:all var(--transition-normal)}.expose-link-table:hover{background:#3b82f633;border-color:#3b82f666;color:#3b82f6;transform:translateY(-1px)}.expose-link-table span{font-size:.75rem}.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.loading{text-align:center;padding:3rem;color:var(--text-muted)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;max-width:700px;width:100%;max-height:90vh;overflow-y:auto}.modal-content h2{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.form-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{margin:0 0 1rem;font-size:.85rem;color:var(--text-muted);font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group.full-width{grid-column:1 / -1}.form-group-split{display:grid;grid-template-columns:1fr 2fr;gap:.5rem}.form-group label{font-size:.75rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-primary);color:var(--text-primary);font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--border-hover)}.form-group input.disabled,.form-group input:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;color:var(--text-secondary)}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.checkbox-custom{width:18px;height:18px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0}.checkbox-label:hover .checkbox-custom{border-color:var(--border-hover)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--text-muted);border-color:var(--text-muted)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"";width:5px;height:9px;border:solid var(--bg-primary);border-width:0 2px 2px 0;transform:rotate(45deg);margin-bottom:2px}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.btn-secondary{background:var(--bg-primary)}@media (max-width: 768px){.watchlist-stats{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:1}}.screenshots-section h3{display:flex;align-items:center;gap:.75rem}.screenshots-section h3 .hint{font-size:.75rem;font-weight:400;color:var(--text-muted)}.screenshots-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:var(--bg-tertiary);border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center}.screenshots-empty .icon{font-size:2rem;opacity:.5;margin-bottom:.5rem}.screenshots-empty p{margin:0;color:var(--text-muted)}.screenshots-empty .hint{font-size:.75rem;margin-top:.25rem}.screenshots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.screenshot-item{position:relative;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-color);background:var(--bg-tertiary)}.screenshot-item img{width:100%;height:100%;object-fit:cover}.screenshot-remove{position:absolute;top:.25rem;right:.25rem;width:24px;height:24px;border:none;border-radius:50%;background:#000000b3;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.screenshot-item:hover .screenshot-remove{opacity:1}.screenshot-remove:hover{background:var(--color-danger)}.card-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.btn-action{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);font-size:.7rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-action:hover{border-color:var(--border-hover);color:var(--text-primary)}.btn-action.btn-bestand{flex:1}.btn-action.btn-bestand:hover{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.btn-action.btn-archive{flex:1}.btn-action.btn-archive:hover{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.btn-action.btn-delete{padding:.375rem .5rem}.btn-action.btn-delete:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.btn-action.btn-calculate{flex:1;background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%)}.btn-action.btn-calculate:hover{background:linear-gradient(135deg,#3b82f626,#6366f126);border-color:#6366f166;color:#6366f1}.btn-link.btn-calculate{color:#6366f1;font-weight:500}.btn-link.btn-calculate:hover{color:#4f46e5}.calculator-modal-overlay{z-index:1100}.calculator-modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);max-width:900px;width:95%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:auto;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d;border:1px solid var(--border-color)}.calculator-modal-content .quick-calculator{border:none;box-shadow:none;border-radius:0}.calculator-modal-content .calculator-header{position:sticky;top:0;background:var(--bg-primary);z-index:10;border-bottom:1px solid var(--border-color);padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.calculator-modal-content .calculator-header h2{margin:0;font-size:1.25rem}.calculator-modal-content .btn-close{position:relative;right:auto;top:auto}.action-buttons-compact{display:flex;gap:.25rem;align-items:center;justify-content:flex-end}.btn-icon-compact{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.btn-icon-compact:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover)}.btn-icon-compact.btn-icon-danger:hover{background:#ef44441a;color:#ef4444;border-color:#ef44444d}.btn-icon-compact svg{width:14px;height:14px;flex-shrink:0}.status-select{padding:.375rem .625rem;border:1px solid var(--accent-color);border-radius:var(--radius-sm);background:var(--accent-color);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);min-width:140px}.status-select:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 2px 4px #4a5a7a4d}.status-select:focus{outline:none;box-shadow:0 0 0 3px #4a5a7a33;border-color:var(--accent-light)}.status-select option{background:var(--bg-primary);color:var(--text-primary);padding:.5rem}@media (max-width: 768px){.watchlist-page{padding:0}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1.1rem}.page-header .subtitle{font-size:.75rem}.watchlist-stats{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-sm)}.stat-value{font-size:1.1rem}.view-mode-toggle{display:none}.watchlist-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.watchlist-card{padding:var(--spacing-md)}.card-header h3{font-size:.95rem}.card-details{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs)}.watchlist-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:auto}.watchlist-table table{min-width:800px}.watchlist-table th:nth-child(3),.watchlist-table td:nth-child(3),.watchlist-table th:nth-child(5),.watchlist-table td:nth-child(5),.watchlist-table th:nth-child(6),.watchlist-table td:nth-child(6){display:none}.watchlist-table th,.watchlist-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}.action-buttons-compact{gap:.125rem}.btn-icon-compact{width:32px;height:32px}.calculator-modal-content{width:100%;max-width:100%;max-height:100vh;border-radius:0}.calculator-modal-content .calculator-header{padding:var(--spacing-md)}.calculator-modal-content .calculator-header h2{font-size:1rem}.status-select{min-width:100px;font-size:.75rem;padding:.25rem .5rem}}@media (max-width: 768px) and (orientation: landscape){.watchlist-stats{grid-template-columns:repeat(3,1fr)}.watchlist-grid{grid-template-columns:repeat(2,1fr)}.card-details{grid-template-columns:repeat(3,1fr)}}.calculations-page{padding:var(--spacing-lg);max-width:1400px;margin:0 auto}.calculations-page .page-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.calculations-page .page-header h1{display:flex;align-items:center;gap:var(--spacing-md);font-size:1.75rem;color:var(--text-primary)}.calculations-list{background-color:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-md)}.calculations-table{width:100%;border-collapse:collapse}.calculations-table thead{background-color:var(--bg-tertiary)}.calculations-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color)}.calculations-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-primary)}.calculations-table tbody tr:hover{background-color:var(--bg-tertiary)}.calculation-link{color:var(--accent-color);text-decoration:none;font-weight:500}.calculation-link:hover{text-decoration:underline}.property-link{color:var(--accent-color);text-decoration:none;font-size:.875rem}.property-link:hover{text-decoration:underline}.calc-type-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.calc-type-badge.schnell{background-color:var(--color-blue-light);color:var(--color-blue-dark)}.calc-type-badge.detail{background-color:var(--color-green-light);color:var(--color-green-dark)}.actions{display:flex;gap:var(--spacing-xs)}.btn{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;transition:all .2s}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-primary{background-color:var(--accent-color);color:#fff}.btn-primary:hover{background-color:var(--accent-color-dark)}.btn-danger{background-color:var(--color-red);color:#fff}.btn-danger:hover{background-color:var(--color-red-dark)}.text-muted{color:var(--text-muted);font-size:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content{background-color:var(--bg-secondary);border-radius:var(--radius-lg);max-width:1200px;width:100%;max-height:90vh;overflow:hidden}.calculator-modal{max-width:1400px}.calculations-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.tab-button{padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-normal)}.tab-button:hover{color:var(--text-primary);background:var(--bg-tertiary)}.tab-button.active{color:var(--accent-color);border-bottom-color:var(--accent-color);background:transparent}.deals-tab-content{margin-top:var(--spacing-md)}.deals-page{max-width:1200px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.page-header h1{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.page-header .subtitle{margin:0;color:var(--text-muted);font-size:.875rem}.deals-container{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.deal-form{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.form-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.deal-form h2{margin:0;color:var(--text-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.btn-link-small{background:none;border:none;color:var(--accent-color);font-size:.75rem;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-link-small:hover{background:var(--bg-tertiary);color:var(--accent-hover)}.deal-form h3{margin:var(--spacing-md) 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.form-group{margin-bottom:var(--spacing-sm)}.form-group label{display:block;margin-bottom:.375rem;font-weight:500;color:var(--text-secondary);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.checkbox-group{margin-bottom:var(--spacing-sm)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.8rem;text-transform:none;letter-spacing:normal}.checkbox-label input[type=checkbox]{margin:0;cursor:pointer;accent-color:var(--accent-color)}.advanced-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8rem;background:var(--bg-tertiary);color:var(--text-primary);transition:border-color var(--transition-normal)}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #6366f11a}.form-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.result-panel{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--border-color);position:sticky;top:var(--spacing-lg);max-height:calc(100vh - 4rem);overflow-y:auto}.result-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.result-panel h2{margin:0;color:var(--text-primary);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.result-section{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.result-section:last-child{border-bottom:none}.result-section h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.result-item{margin-bottom:.5rem;color:var(--text-secondary);font-size:.8rem;display:flex;align-items:flex-start;gap:.5rem}.result-item strong{color:var(--text-primary);font-weight:600;min-width:120px;flex-shrink:0}.result-item ul{margin:.25rem 0 0;padding-left:1.25rem;color:var(--text-secondary);list-style:disc}.result-item ul li{margin-bottom:.25rem}@media (max-width: 1024px){.deals-container{grid-template-columns:1fr}.result-panel{position:static;max-height:none}.form-row{grid-template-columns:1fr}}.btn-primary{background:var(--accent-color);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover)}.import-modal{background:var(--card-bg);border:1px solid var(--border-color);border-radius:1rem;width:100%;max-width:540px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.import-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.import-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.import-modal-header .close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.5rem;color:var(--text-muted);font-size:1.5rem;cursor:pointer;transition:all .15s ease}.import-modal-header .close-button:hover{background:var(--hover-bg);color:var(--text-primary)}.import-modal-content{padding:1.5rem;overflow-y:auto;flex:1}.import-info-box{padding:.75rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:.5rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:1.5rem}.import-info-box strong{color:var(--text-primary)}.import-step{display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.import-step:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.step-number{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--hover-bg);border-radius:50%;font-size:.85rem;font-weight:600;color:var(--text-secondary)}.step-content{flex:1}.step-content h3{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:var(--text-primary)}.step-content p{margin:0 0 .75rem;font-size:.85rem;color:var(--text-muted)}.step-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:var(--border-color)}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--text-primary);border:none;border-radius:.5rem;color:var(--card-bg);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.import-button{width:100%;justify-content:center;padding:.75rem}.drop-zone{display:flex;align-items:center;justify-content:center;min-height:100px;padding:1.5rem;background:var(--hover-bg);border:2px dashed var(--border-color);border-radius:.75rem;cursor:pointer;transition:all .2s ease}.drop-zone:hover{border-color:var(--text-muted);background:#ffffff08}.drop-zone.has-file{border-style:solid;border-color:#22c55e;background:#22c55e0d}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-muted)}.drop-zone-content svg{opacity:.5}.drop-zone-content span{font-size:.85rem}.file-info{display:flex;align-items:center;gap:.5rem;color:var(--text-primary)}.file-info svg{color:#22c55e}.file-size{color:var(--text-muted);font-size:.8rem}.import-result{margin-top:1rem;padding:1rem;border-radius:.75rem}.import-result.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3)}.import-result.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.result-header{display:flex;align-items:center;gap:.5rem;font-weight:600}.import-result.success .result-header{color:#22c55e}.import-result.error .result-header{color:#ef4444}.result-stats{display:flex;gap:1rem;margin-top:.5rem}.result-stats .stat{font-size:.9rem;font-weight:500}.result-stats .stat.created{color:#22c55e}.result-stats .stat.updated{color:#3b82f6}.result-skipped{margin:.5rem 0 0;font-size:.85rem;color:var(--text-muted)}.result-errors{margin-top:.75rem;font-size:.85rem;color:var(--text-secondary)}.result-errors ul{margin:.5rem 0 0 1.25rem;padding:0}.result-errors li{margin-bottom:.25rem}.import-modal-footer{display:flex;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--border-color)}.spinner-small{width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.addresses-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;font-size:2rem;font-weight:600;color:var(--text-primary)}.header-actions{display:flex;gap:1rem;align-items:center}.header-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.header-btn:hover{background:var(--border-color)}.header-btn svg{flex-shrink:0}.main-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:2px solid var(--border-color)}.main-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.main-tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.main-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.sub-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.sub-tab{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:all .2s}.sub-tab:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--primary-color)}.sub-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-primary);padding:2rem;border-radius:8px;max-width:500px;width:90%;box-shadow:0 4px 6px #0000001a}.modal-content h2{margin-top:0;margin-bottom:1rem}.btn-icon{background:none;border:none;padding:.5rem;cursor:pointer;font-size:1.2rem;opacity:.7;transition:opacity .2s;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{opacity:1}.btn-icon svg{stroke:currentColor;color:var(--text-primary);fill:none}@media (max-width: 768px){.addresses-page{padding:var(--spacing-sm)}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header h1{font-size:1.25rem}.header-actions{flex-wrap:wrap;gap:var(--spacing-sm)}.header-btn{flex:1;min-width:120px;justify-content:center}.main-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0}.main-tabs::-webkit-scrollbar{display:none}.main-tab{padding:.5rem 1rem;font-size:.85rem;white-space:nowrap}.sub-tabs{overflow-x:auto;flex-wrap:nowrap;gap:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.sub-tab{padding:.375rem .75rem;font-size:.8rem;white-space:nowrap;flex-shrink:0}.modal-content{max-width:100%;width:100%;margin:var(--spacing-sm);padding:var(--spacing-md);max-height:90vh;overflow-y:auto}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:450px}.addresses-page .sortable-table-wrapper{border-radius:var(--radius-md)}.addresses-page .sortable-table{min-width:450px}.addresses-page .sortable-table th:nth-child(4),.addresses-page .sortable-table td:nth-child(4),.addresses-page .sortable-table th:nth-child(5),.addresses-page .sortable-table td:nth-child(5){display:none}.addresses-page .sortable-table th,.addresses-page .sortable-table td{padding:.4rem .5rem;font-size:.7rem;white-space:nowrap}}@media (max-width: 768px) and (orientation: landscape){.main-tabs{gap:var(--spacing-sm)}.main-tab{padding:.5rem 1.25rem}}.person-detail-page{padding:0}.person-detail-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.header-info{display:flex;align-items:center;gap:1.25rem}.person-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#64748b4d,#4755694d);display:flex;align-items:center;justify-content:center;color:#fffc;border:2px solid rgba(255,255,255,.1)}.header-text h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:#fff}.header-badges{display:flex;gap:.5rem;flex-wrap:wrap}.role-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.role-badge.role-mieter{background:#22c55e26;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.role-badge.role-interessent{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.role-badge.role-eigentuemer,.role-badge.role-eigentümer{background:#a855f726;color:#c084fc;border:1px solid rgba(168,85,247,.3)}.role-badge.role-makler{background:#f9731626;color:#fb923c;border:1px solid rgba(249,115,22,.3)}.role-badge.role-handwerker{background:#eab30826;color:#fbbf24;border:1px solid rgba(234,179,8,.3)}.role-badge.role-sonstiges{background:#64748b26;color:#94a3b8;border:1px solid rgba(100,116,139,.3)}.role-badge.role-hauptmieter{background:#22c55e33;color:#4ade80}.role-badge.role-mitmieter{background:#3b82f633;color:#60a5fa}.tab-navigation{display:flex;gap:.25rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1.5rem;overflow-x:auto}.tab-button{padding:.875rem 1.25rem;background:transparent;border:none;color:#fff9;font-size:.875rem;font-weight:500;cursor:pointer;position:relative;white-space:nowrap;transition:color .2s}.tab-button:hover{color:#ffffffe6}.tab-button.active{color:#fff}.tab-button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,#60a5fa,#818cf8)}.tab-content{min-height:400px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;margin-bottom:2rem}.info-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem}.info-card.full-width{grid-column:1 / -1}.info-card h3{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.info-list{display:flex;flex-direction:column;gap:.75rem}.info-item{display:flex;align-items:center;gap:.75rem;color:#ffffffe6;font-size:.9375rem}.info-item svg{color:#ffffff80;flex-shrink:0}.info-item a{color:#60a5fa;text-decoration:none}.info-item a:hover{text-decoration:underline}.info-label{font-size:.75rem;color:#ffffff80;margin-left:auto}.info-value{font-family:SF Mono,Monaco,monospace;font-size:.875rem}.no-data{color:#fff6;font-size:.875rem;font-style:italic;margin:0}.notes-text{color:#fffc;line-height:1.6;margin:0;white-space:pre-wrap}.quick-stats{display:flex;gap:1.5rem;padding:1.5rem;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.stat-item{text-align:center;flex:1}.stat-item .stat-value{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.25rem}.stat-item .stat-label{font-size:.8125rem;color:#ffffff80}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.tab-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#fff}.table-responsive{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06)}.data-table th{font-size:.75rem;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em}.data-table td{font-size:.875rem;color:#ffffffe6}.data-table .link{color:#60a5fa;text-decoration:none}.data-table .link:hover{text-decoration:underline}.unit-name{color:#fff9;font-size:.8125rem}.status-badge{display:inline-flex;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background:#22c55e26;color:#4ade80}.status-badge.ended{background:#64748b26;color:#94a3b8}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.document-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px;transition:all .2s}.document-card:hover{background:#ffffff0d;border-color:#ffffff1a}.document-icon{width:48px;height:48px;border-radius:10px;background:#64748b33;display:flex;align-items:center;justify-content:center;color:#ffffffb3;flex-shrink:0}.document-info{flex:1;min-width:0}.document-title{font-weight:500;color:#fff;margin-bottom:.375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-meta{display:flex;align-items:center;gap:.75rem;font-size:.75rem}.category-badge{background:#64748b33;color:#ffffffb3;padding:.125rem .5rem;border-radius:4px}.document-meta .date{color:#ffffff80}.document-actions{display:flex;gap:.5rem}.btn-icon{width:32px;height:32px;border-radius:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#ffffffb3;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#ffffff1a;color:#fff}.communication-timeline{display:flex;flex-direction:column;gap:1rem}.timeline-item{display:flex;gap:1rem;padding:1rem;background:#ffffff05;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.timeline-marker{flex-shrink:0}.kanal-icon{width:40px;height:40px;border-radius:50%;background:#64748b33;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.kanal-icon.email{background:#3b82f633}.kanal-icon.telefon{background:#22c55e33}.kanal-icon.brief{background:#a855f733}.kanal-icon.persoenlich{background:#f9731633}.timeline-content{flex:1;min-width:0}.timeline-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.timeline-date{font-size:.8125rem;color:#ffffff80}.richtung-badge{font-size:.6875rem;padding:.125rem .5rem;border-radius:4px;font-weight:500}.richtung-badge.eingehend{background:#3b82f626;color:#60a5fa}.richtung-badge.ausgehend{background:#22c55e26;color:#4ade80}.timeline-subject{font-weight:500;color:#fff;margin-bottom:.375rem}.timeline-body{font-size:.875rem;color:#ffffffb3;line-height:1.5;margin-bottom:.5rem}.timeline-tab{padding:var(--spacing-md)}.timeline-tab .tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.timeline-tab .tab-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.timeline-filters{display:flex;gap:var(--spacing-sm)}.filter-select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem}.timeline-container{position:relative;padding-left:var(--spacing-lg)}.timeline-event{position:relative;padding-bottom:var(--spacing-lg);display:flex;gap:var(--spacing-md)}.timeline-line{position:absolute;left:11px;top:24px;bottom:-8px;width:2px;background:var(--border-color)}.timeline-event:last-child .timeline-line{display:none}.timeline-marker{position:relative;z-index:1;flex-shrink:0}.event-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;font-size:.875rem}.timeline-content{flex:1;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all var(--transition-normal)}.timeline-content:hover{border-color:var(--border-hover);box-shadow:0 2px 8px #0000001a}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.event-date{font-size:.75rem;color:var(--text-muted);font-weight:500}.event-type-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.event-type-badge.event-type-communication{background:#3b82f626;color:#3b82f6}.event-type-badge.event-type-document{background:#a855f726;color:#a855f7}.event-type-badge.event-type-task{background:#f9731626;color:#f97316}.event-type-badge.event-type-tenancy{background:#22c55e26;color:#22c55e}.event-type-badge.event-type-inspection{background:#0ea5e926;color:#0ea5e9}.event-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.event-description{font-size:.8rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.event-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.btn-link-small{font-size:.75rem;color:var(--accent-color);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.btn-link-small:hover{color:var(--accent-hover)}.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff40}.btn-danger{padding:.625rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#f87171;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#ef444433}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-link{background:none;border:none;color:#60a5fa;font-size:.8125rem;cursor:pointer;padding:0}.btn-link:hover{text-decoration:underline}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#1e2235;border-radius:16px;border:1px solid rgba(255,255,255,.1);max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.large{max-width:800px}@media (max-width: 768px){.person-detail-page .page-header{flex-direction:column;gap:1rem}.header-info{flex-direction:column;text-align:center}.header-actions{width:100%;justify-content:center}.quick-stats{flex-direction:column;gap:1rem}.info-grid{grid-template-columns:1fr}.tab-navigation{gap:0}.tab-button{padding:.75rem 1rem;font-size:.8125rem}}.kanban-board{display:flex;flex-direction:column;gap:1rem;height:100%}.kanban-stats{display:flex;gap:.75rem;flex-wrap:wrap;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:6px;font-size:.75rem;flex-shrink:0;margin-bottom:.5rem}.kanban-total{color:var(--text-secondary)}.kanban-stat{color:var(--text-secondary);padding-left:.6rem;border-left:2px solid var(--border-color)}.kanban-columns{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem;flex:1;min-height:400px;overflow-y:hidden}.kanban-column{flex:1;min-width:240px;max-width:280px;background:var(--bg-secondary);border-radius:8px;display:flex;flex-direction:column;transition:all .3s ease}.kanban-column.collapsed{min-width:60px;max-width:60px;flex:0 0 60px}.kanban-column.collapsed .kanban-column-content{display:none}.kanban-column.collapsed .kanban-column-header{writing-mode:vertical-rl;text-orientation:mixed;padding:.75rem .6rem;justify-content:center}.kanban-column.collapsed .kanban-column-title{flex-direction:column;gap:.5rem}.kanban-column.collapsed .kanban-column-name{font-size:.75rem;white-space:nowrap}.kanban-column.collapsed .kanban-add-btn{display:none}.kanban-column.drag-over{background:var(--bg-tertiary);box-shadow:inset 0 0 0 2px var(--primary-color)}.kanban-column-header{padding:.6rem .75rem;border-top:3px solid var(--primary-color);border-radius:8px 8px 0 0;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.kanban-column-title{display:flex;align-items:center;gap:.4rem;flex:1}.kanban-collapse-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.2rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.kanban-collapse-btn:hover{background:var(--bg-tertiary);color:var(--primary-color)}.kanban-column-name{font-weight:600;font-size:.85rem;color:var(--text-primary)}.kanban-column-count{background:var(--bg-tertiary);color:var(--text-secondary);padding:.1rem .4rem;border-radius:8px;font-size:.7rem;font-weight:600}.kanban-add-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.kanban-add-btn:hover{background:var(--bg-tertiary);color:var(--primary-color)}.kanban-column-content{flex:1;padding:.4rem;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem;min-height:0}.kanban-empty{display:flex;align-items:center;justify-content:center;height:100px;color:var(--text-muted);font-size:.85rem;font-style:italic;border:2px dashed var(--border-color);border-radius:8px;margin:.5rem}.kanban-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:.6rem;cursor:grab;transition:all .2s ease;flex-shrink:0}.kanban-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.kanban-card.dragging{opacity:.5;cursor:grabbing}.kanban-card:active{cursor:grabbing}.deal-card{display:flex;flex-direction:column;gap:.4rem}.deal-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.deal-card-title{font-weight:600;font-size:.8rem;color:var(--text-primary);line-height:1.3;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.deal-card-type{font-size:.7rem;padding:.15rem .4rem;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:4px;white-space:nowrap}.deal-card-info-line{font-size:.7rem;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-card-facts{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.7rem;color:var(--text-secondary)}.deal-card-fact{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.deal-card-fact svg{width:10px;height:10px;opacity:.7}.deal-card-location{font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.deal-card-location svg{width:12px;height:12px;opacity:.7}.deal-card-price{font-size:.95rem;font-weight:700;color:var(--primary-color)}.deal-card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.4rem;border-top:1px solid var(--border-color);margin-top:.2rem}.deal-card-date{font-size:.75rem;color:var(--text-muted)}.deal-card-actions{display:flex;gap:.25rem}.deal-card-actions button{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.deal-card-actions button:hover{background:var(--bg-tertiary);color:var(--primary-color)}.deal-card-actions button.delete:hover{color:var(--danger-color)}.deal-card-tags{display:flex;flex-wrap:wrap;gap:.25rem}.deal-card-tag{font-size:.65rem;padding:.1rem .35rem;background:var(--primary-color);color:#fff;border-radius:3px;opacity:.8}.deal-card-rendite{font-size:.75rem;padding:.15rem .4rem;border-radius:4px;font-weight:600}.deal-card-rendite.good{background:#22c55e26;color:var(--success-color)}.deal-card-rendite.medium{background:#eab30826;color:var(--warning-color)}.deal-card-rendite.bad{background:#ef444426;color:var(--danger-color)}@media (max-width: 1200px){.kanban-columns{overflow-x:auto;padding-bottom:1rem}.kanban-column{min-width:260px}}@media (max-width: 768px){.kanban-stats{flex-direction:column;gap:.5rem}.kanban-stat{border-left:none;padding-left:0}}.pipeline-page{padding:1rem;height:100%;display:flex;flex-direction:column;overflow:hidden}.pipeline-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem;flex-wrap:wrap;flex-shrink:0}.pipeline-page .page-header h1{margin:0;font-size:1.25rem;color:var(--text-primary)}.pipeline-page .subtitle{margin:.15rem 0 0;color:var(--text-secondary);font-size:.8rem}.header-actions{display:flex;gap:.75rem;align-items:center}.view-toggle{display:flex;background:var(--bg-secondary);border-radius:6px;padding:.25rem}.view-toggle button{background:transparent;border:none;padding:.5rem .75rem;cursor:pointer;color:var(--text-secondary);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.view-toggle button:hover{color:var(--text-primary)}.view-toggle button.active{background:var(--primary-color);color:#fff}.pipeline-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem;flex-shrink:0}.pipeline-stat-card{background:var(--bg-secondary);border-radius:8px;padding:.75rem 1rem;text-align:center;border:1px solid var(--border-color);transition:all .2s ease}.pipeline-stat-card:hover{border-color:var(--primary-color)}.pipeline-stat-card.highlight{background:linear-gradient(135deg,var(--primary-color) 0%,#8b5cf6 100%);border:none}.pipeline-stat-card.highlight .stat-value,.pipeline-stat-card.highlight .stat-label{color:#fff}.pipeline-stat-card .stat-value{font-size:1.4rem;font-weight:700;color:var(--text-primary);line-height:1.2}.pipeline-stat-card .stat-label{font-size:.7rem;color:var(--text-secondary);margin-top:.15rem}.pipeline-list{flex:1;overflow:auto}.pipeline-table{width:100%;border-collapse:collapse;background:var(--bg-secondary);border-radius:12px;overflow:hidden}.pipeline-table th,.pipeline-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.pipeline-table th{background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.pipeline-table td{color:var(--text-primary);font-size:.9rem}.pipeline-table tbody tr:hover{background:var(--bg-tertiary)}.pipeline-table tbody tr:last-child td{border-bottom:none}.rendite-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600}.rendite-badge.good{background:#22c55e26;color:var(--success-color)}.rendite-badge.medium{background:#eab30826;color:var(--warning-color)}.rendite-badge.bad{background:#ef444426;color:var(--danger-color)}.status-badge{display:inline-block;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;color:#fff}.table-actions{display:flex;gap:.5rem}.table-actions button{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.35rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.table-actions button:hover{background:var(--bg-tertiary);color:var(--primary-color)}.table-actions button.delete:hover{color:var(--danger-color)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:var(--text-secondary)}.loading{display:flex;align-items:center;justify-content:center;height:300px;color:var(--text-secondary)}@media (max-width: 768px){.pipeline-page{padding:1rem}.pipeline-page .page-header{flex-direction:column;align-items:stretch}.header-actions{justify-content:space-between}.pipeline-stats{grid-template-columns:repeat(2,1fr)}.pipeline-table{display:block;overflow-x:auto}}.payment-form{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);min-width:500px;max-width:700px}.form-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.form-header h2{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.form-body{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-group .required{color:#ef4444}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}.form-group textarea{resize:vertical;min-height:80px}.form-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}@media (max-width: 768px){.payment-form{min-width:auto;width:100%;padding:var(--spacing-md)}.form-row{grid-template-columns:1fr}}.bulk-payment-form{background:var(--bg-primary);border-radius:8px;padding:1.5rem;max-width:1400px;margin:0 auto}.bulk-payment-form .form-header{margin-bottom:1.5rem}.bulk-payment-form .form-header h2{margin:0 0 .5rem;font-size:1.5rem;color:var(--text-primary)}.bulk-payment-form .form-subtitle{margin:0;color:var(--text-muted);font-size:.9rem}.bulk-form-body{margin-bottom:1.5rem}.bulk-table-container{overflow-x:auto;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary)}.bulk-payment-table{width:100%;border-collapse:collapse;min-width:1000px}.bulk-payment-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:1}.bulk-payment-table th{padding:.75rem;text-align:left;font-weight:600;font-size:.875rem;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.bulk-payment-table td{padding:.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.bulk-payment-table tbody tr:hover{background:var(--bg-hover)}.bulk-payment-table tbody tr:last-child td{border-bottom:none}.bulk-input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;font-family:inherit}.bulk-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4a9eff1a}.bulk-input[type=number]{text-align:right}.bulk-input[type=date],.bulk-input[type=month]{min-width:140px}.bulk-input select{cursor:pointer}.btn-remove-row{background:var(--danger-color, #dc3545);color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;line-height:1;padding:0;transition:background .2s}.btn-remove-row:hover{background:var(--danger-color-hover, #c82333)}.bulk-actions{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:6px}.row-count{color:var(--text-muted);font-size:.875rem;margin-left:auto}.form-footer{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}@media (max-width: 768px){.bulk-payment-form{padding:1rem}.bulk-table-container{font-size:.8rem}.bulk-payment-table th,.bulk-payment-table td{padding:.4rem}.bulk-input{font-size:.8rem;padding:.4rem}}.csv-import-modal{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);min-width:600px;max-width:900px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.close-button{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-button:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{display:flex;flex-direction:column;gap:var(--spacing-lg)}.import-instructions{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.import-instructions h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:1rem;font-weight:600}.import-instructions p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);font-size:.875rem}.import-instructions ul{margin:0;padding-left:var(--spacing-lg);color:var(--text-secondary);font-size:.875rem}.import-instructions li{margin-bottom:var(--spacing-xs)}.import-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.file-upload{display:flex;gap:var(--spacing-sm)}.text-input{display:flex;flex-direction:column;gap:var(--spacing-xs)}.text-input label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.text-input textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;font-family:Courier New,monospace;resize:vertical;min-height:150px}.text-input textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}.error-message{background:#ef44441a;border:1px solid #ef4444;border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);color:#ef4444;font-size:.875rem}.preview{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.preview h3{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:1rem;font-weight:600}.preview-table{overflow-x:auto}.preview-table table{width:100%;border-collapse:collapse;font-size:.875rem}.preview-table th,.preview-table td{padding:var(--spacing-xs) var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.preview-table th{font-weight:600;color:var(--text-primary);background:var(--bg-secondary)}.preview-table td{color:var(--text-secondary)}.preview-more{margin:var(--spacing-sm) 0 0 0;color:var(--text-muted);font-size:.8rem;font-style:italic}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}@media (max-width: 768px){.csv-import-modal{min-width:auto;width:100%;padding:var(--spacing-md)}}.banking-page{padding:var(--spacing-lg)}.banking-page .modal-content-large{max-width:1400px;max-height:90vh;overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.page-header h1{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:var(--spacing-sm)}.subtitle{margin:0;color:var(--text-secondary);font-size:.875rem}.header-actions{display:flex;gap:var(--spacing-sm)}.banking-tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg);flex-wrap:wrap;overflow-x:visible}.banking-tabs .tab{position:relative;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--text-tertiary);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all var(--transition-normal);font-size:.9rem;display:flex;align-items:center;gap:var(--spacing-xs)}.banking-tabs .tab:hover{color:var(--text-secondary);background-color:var(--bg-tertiary)}.banking-tabs .tab.active{color:var(--text-primary);border-bottom-color:var(--accent-color);font-weight:600}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .25rem;background-color:var(--accent-color);color:var(--text-primary);border-radius:9px;font-size:.65rem;font-weight:600;line-height:1}.tab-badge-warning{background-color:#f59e0b}.tab-badge-danger{background-color:#ef4444}.banking-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.banking-overview{display:flex;flex-direction:column;gap:var(--spacing-lg)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.stat-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);text-align:center}.stat-card.stat-warning{border-color:#f59e0b;background:#f59e0b1a}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.stat-amount{font-size:1.25rem;font-weight:600;color:var(--accent-color)}.outstanding-list h2{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.summary-table{overflow-x:auto}.summary-table table{width:100%;border-collapse:collapse}.summary-table th,.summary-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.summary-table th{font-weight:600;color:var(--text-primary);font-size:.875rem;text-transform:uppercase;letter-spacing:.03em}.summary-table td{color:var(--text-secondary);font-size:.875rem}.zahlungsstatus-aktuell{color:#22c55e;font-weight:600}.zahlungsstatus-verzögert{color:#f59e0b;font-weight:600}.zahlungsstatus-problematisch{color:#ef4444;font-weight:600}.payments-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.filters{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.filter-select,.filter-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;transition:all var(--transition-fast)}.status-badge:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.status-icon{font-size:.875rem;line-height:1}.status-label{font-size:.7rem}.status-bezahlt{background:#22c55e26;color:#22c55e}.status-ausstehend{background:#eab30826;color:#eab308}.status-ueberfaellig{background:#ef444426;color:#ef4444}.status-teilweise{background:#f59e0b26;color:#f59e0b}.status-storniert{background:#6b728026;color:#6b7280}.mahnung-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .375rem;background-color:#ef4444;color:#fff;border-radius:10px;font-size:.7rem;font-weight:600}.action-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.btn-link{background:none;border:none;color:var(--accent-color);cursor:pointer;font-size:.875rem;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-link:hover{background:var(--bg-hover);color:var(--accent-hover)}.btn-link.btn-warning{color:#f59e0b}.btn-link.btn-warning:hover{background:#f59e0b1a}.btn-link.btn-danger{color:#ef4444}.btn-link.btn-danger:hover{background:#ef44441a}@media (max-width: 768px){.banking-page{padding:var(--spacing-md)}.page-header{flex-direction:column}.header-actions{width:100%;flex-direction:column}.header-actions .btn{width:100%}.banking-tabs{flex-wrap:nowrap;overflow-x:auto}.stats-grid{grid-template-columns:1fr}.filters{flex-direction:column;align-items:stretch}.filter-select,.filter-input{width:100%}.summary-table{font-size:.8rem}.action-buttons{flex-direction:column}}.email-templates-page{padding:1.5rem}.email-templates-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.email-templates-page .page-header h1{margin:0;font-size:1.5rem;color:var(--text-primary)}.email-templates-page .subtitle{margin:.25rem 0 0;color:var(--text-secondary);font-size:.9rem}.header-actions{display:flex;gap:.75rem}.templates-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.templates-filters .filter-group{display:flex;flex-direction:column;gap:.25rem}.templates-filters label{font-size:.8rem;color:var(--text-secondary)}.templates-filters select,.templates-filters input{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;min-width:200px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.template-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;transition:all .2s ease}.template-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a}.template-card.is-default{border-left:3px solid var(--primary-color)}.template-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.category-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase}.category-badge.category-besichtigung{background:#6366f126;color:#6366f1}.category-badge.category-mietvertrag{background:#22c55e26;color:#22c55e}.category-badge.category-mahnung{background:#ef444426;color:#ef4444}.category-badge.category-nebenkosten{background:#f59e0b26;color:#f59e0b}.category-badge.category-wartung{background:#3b82f626;color:#3b82f6}.category-badge.category-kuendigung{background:#8b5cf626;color:#8b5cf6}.category-badge.category-allgemein{background:#6b728026;color:#6b7280}.default-badge{font-size:.65rem;padding:.15rem .4rem;background:var(--primary-color);color:#fff;border-radius:3px;font-weight:600}.template-card-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.template-card-subject{font-size:.85rem;color:var(--text-secondary)}.template-card-subject strong{color:var(--text-primary)}.template-card-preview{font-size:.8rem;color:var(--text-muted);line-height:1.4;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.template-card-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);padding-top:.5rem;border-top:1px solid var(--border-color)}.template-card-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.5rem}.template-card-actions button{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.4rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.template-card-actions button:hover{background:var(--bg-tertiary);color:var(--primary-color)}.template-card-actions button.delete:hover{color:var(--danger-color)}.template-form-modal{max-width:700px;max-height:90vh;overflow-y:auto}.template-form-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.template-form-modal .form-group{margin-bottom:1rem}.template-form-modal .label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.variable-buttons{display:flex;gap:.25rem;flex-wrap:wrap}.variable-btn{font-size:.7rem;padding:.2rem .4rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.variable-btn:hover,.variable-btn.more{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.template-form-modal textarea{font-family:Consolas,Monaco,monospace;font-size:.9rem;line-height:1.5}.preview-modal{max-width:600px}.preview-content{padding:1rem 0}.preview-subject{padding:.75rem 1rem;background:var(--bg-tertiary);border-radius:6px;margin-bottom:1rem;font-size:.9rem}.preview-body{padding:1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;line-height:1.6;white-space:pre-wrap}.preview-variables{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);font-size:.85rem}.variable-list{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.5rem}.variable-tag{font-size:.75rem;padding:.15rem .4rem;background:var(--bg-tertiary);border-radius:3px;color:var(--text-secondary);font-family:monospace}.variables-modal{max-width:600px;max-height:80vh}.variables-list{max-height:60vh;overflow-y:auto}.variable-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-bottom:1px solid var(--border-color)}.variable-item:last-child{border-bottom:none}.variable-code{font-family:monospace;font-size:.85rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:4px;color:var(--primary-color);min-width:160px}.variable-desc{flex:1;font-size:.85rem;color:var(--text-secondary)}.copy-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.35rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.copy-btn:hover{background:var(--bg-tertiary);color:var(--primary-color)}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:var(--text-secondary)}.empty-state svg{opacity:.5;margin-bottom:1rem}.empty-state p{margin-bottom:1rem}@media (max-width: 768px){.email-templates-page{padding:1rem}.email-templates-page .page-header{flex-direction:column;align-items:stretch}.header-actions{justify-content:flex-end}.templates-grid,.template-form-modal .form-row{grid-template-columns:1fr}}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg-primary)}.not-found-content{text-align:center;max-width:500px}.not-found-icon{color:var(--text-muted);margin-bottom:1.5rem}.not-found-page h1{margin:0 0 1rem;font-size:2rem;font-weight:600;color:var(--text-primary)}.not-found-message{margin:0 0 2rem;color:var(--text-secondary);font-size:1rem}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.not-found-actions .btn-primary,.not-found-actions .btn-secondary{padding:.75rem 1.5rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);text-decoration:none;display:inline-block}.not-found-actions .btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.not-found-actions .btn-primary:hover{background:var(--primary-color-hover)}.not-found-actions .btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.not-found-actions .btn-secondary:hover{background:var(--bg-tertiary)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);overflow:hidden;position:fixed;width:100%;height:100%;-webkit-overflow-scrolling:touch}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{height:100%;width:100%;background-color:var(--bg-primary);overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}:root{--bg-primary: #1a1d2e;--bg-secondary: #252a3a;--bg-tertiary: #2f3548;--bg-hover: #3a4155;--text-primary: #e0e4eb;--text-secondary: #c4c9d4;--text-tertiary: #8f98a8;--text-muted: #5a6375;--accent-color: #4a5a7a;--accent-hover: #5a6a8a;--accent-light: #6a7a9a;--border-color: #2f3548;--border-hover: #3a4155;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--transition-fast: .1s ease;--transition-normal: .15s ease;--scrollbar-track: transparent;--scrollbar-thumb: rgba(90, 106, 138, .3);--scrollbar-thumb-hover: rgba(90, 106, 138, .5);--btn-primary-bg: #4a5a7a;--btn-primary-text: #e0e4eb;--btn-primary-hover: #5a6a8a;--btn-secondary-bg: #2f3548;--btn-secondary-text: #c4c9d4;--btn-secondary-hover: #3a4155;--btn-danger-bg: #4a5a7a;--btn-danger-text: #e0e4eb;--btn-danger-hover: #5a6a8a;--focus-ring: 2px solid var(--accent-color);--focus-ring-offset: 2px;--badge-bg: #2f3548;--badge-text: #c4c9d4;--badge-border: #3a4155}.btn-primary,.btn-secondary,.btn-danger{font-size:.8rem;border-radius:var(--radius-md);transition:all var(--transition-normal);cursor:pointer;font-weight:500;border:1px solid var(--border-color)}.btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);padding:.375rem .75rem}.btn-primary:hover:not(:disabled){background-color:var(--btn-primary-hover);border-color:var(--border-hover)}.btn-secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);padding:.375rem .75rem}.btn-secondary:hover:not(:disabled){background-color:var(--btn-secondary-hover);border-color:var(--border-hover)}.btn-secondary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.btn-danger{background-color:var(--btn-danger-bg);color:var(--btn-danger-text);padding:.375rem .75rem}.btn-danger:hover:not(:disabled){background-color:var(--btn-danger-hover);border-color:var(--border-hover)}.btn-danger:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.btn-sm{padding:.25rem .5rem;font-size:.7rem}.btn-md{padding:.375rem .75rem;font-size:.8rem}.btn-lg{padding:.5rem 1rem;font-size:.9rem}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-danger:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-link{color:var(--text-secondary);text-decoration:none;font-weight:500;background:none;border:none;cursor:pointer;padding:0;font-size:inherit;font-family:inherit;transition:color .2s ease}.btn-link:hover{color:var(--text-primary);text-decoration:underline}.btn-link:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px;border-radius:var(--radius-sm)}.btn-link.btn-danger{color:var(--text-secondary)}.btn-link.btn-danger:hover{color:var(--text-primary)}input[type=text],input[type=number],input[type=date],input[type=email],input[type=tel],select,textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;font-family:inherit;background-color:var(--bg-secondary);color:var(--text-secondary);transition:border-color .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #4a5a7a33}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset);border-color:var(--accent-color)}a:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.tab:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}input::placeholder,textarea::placeholder{color:var(--text-muted)}.card,.panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-normal)}.card:hover,.panel:hover{border-color:var(--border-hover)}.panel-title{padding:.625rem .875rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary);color:var(--text-primary)}.panel-content{padding:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#1a1d2ed9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;overflow-y:auto}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;color:var(--text-secondary)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}table{width:100%;border-collapse:collapse;color:var(--text-secondary);font-size:.8rem}thead{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color)}th{padding:.5rem .625rem;text-align:left;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}td{padding:.5rem .625rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem}tbody tr{transition:background-color var(--transition-fast)}tbody tr:hover{background-color:#33415580}tbody tr:last-child td{border-bottom:none}@media (max-width: 768px){.btn-primary,.btn-secondary,.btn-danger{min-height:44px;padding:.625rem 1rem;font-size:.9rem}.btn-sm{min-height:36px;padding:.375rem .75rem;font-size:.8rem}input[type=text],input[type=number],input[type=date],input[type=email],input[type=tel],input[type=password],select,textarea{min-height:48px;padding:.875rem;font-size:16px}.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:0}.page-header{flex-direction:column;gap:var(--spacing-md);align-items:stretch!important}.page-header h1{font-size:1.25rem}.filters-section{flex-direction:column;gap:var(--spacing-md)}.filter-group{width:100%;min-width:100%}}@media (max-width: 640px){table.responsive-table,.responsive-table table{display:block}.responsive-table thead{display:none}.responsive-table tbody{display:flex;flex-direction:column;gap:var(--spacing-sm)}.responsive-table tr{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.responsive-table td{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-color)}.responsive-table td:last-child{border-bottom:none}.responsive-table td:before{content:attr(data-label);font-weight:600;color:var(--text-muted);font-size:.7rem;text-transform:uppercase}.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--spacing-sm)}.stats-grid.advanced{grid-template-columns:repeat(2,1fr)!important}}
