.email-verification-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.verification-container{background:#fff;border-radius:12px;padding:3rem 2rem;max-width:500px;width:100%;text-align:center;box-shadow:0 10px 40px #0000001a}.verification-icon{margin-bottom:1.5rem;color:#667eea}.verification-icon svg{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.verification-container h1{color:#2d3748;font-size:2rem;margin-bottom:1rem;font-weight:700}.verification-message{color:#4a5568;font-size:1rem;margin-bottom:.5rem}.user-email{color:#667eea;font-size:1.1rem;margin-bottom:1.5rem;word-break:break-all}.verification-instructions{color:#718096;font-size:.95rem;line-height:1.6;margin-bottom:2rem;padding:0 1rem}.verification-alert{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.verification-alert.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.verification-alert.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.verification-actions{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.verification-button{padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;width:100%}.verification-button:disabled{opacity:.6;cursor:not-allowed}.verification-button.primary{background:#667eea;color:#fff}.verification-button.primary:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.verification-button.secondary{background:#edf2f7;color:#4a5568}.verification-button.secondary:hover:not(:disabled){background:#e2e8f0}.verification-button.tertiary{background:transparent;color:#718096;font-size:.9rem;padding:.5rem 1rem}.verification-button.tertiary:hover{color:#4a5568;text-decoration:underline}.verification-tips{background:#f7fafc;border-radius:8px;padding:1.5rem;text-align:left}.verification-tips h3{color:#2d3748;font-size:1rem;margin-bottom:1rem;font-weight:600}.verification-tips ul{list-style:none;padding:0;margin:0}.verification-tips li{color:#4a5568;font-size:.9rem;padding:.5rem 0 .5rem 1.5rem;position:relative}.verification-tips li:before{content:"•";position:absolute;left:.5rem;color:#667eea;font-weight:700}@media (max-width: 640px){.verification-container{padding:2rem 1.5rem}.verification-container h1{font-size:1.5rem}}.terms-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.terms-modal-container{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.terms-modal-header{padding:2rem 2rem 1rem;border-bottom:1px solid #e2e8f0}.terms-modal-header h2{margin:0 0 .5rem;font-size:1.75rem;color:#2d3748;font-weight:700}.terms-modal-subtitle{margin:0;color:#718096;font-size:.95rem}.terms-modal-body{flex:1;overflow-y:auto;padding:1.5rem 2rem;position:relative}.terms-modal-content{color:#4a5568;line-height:1.6}.terms-modal-content section{margin-bottom:1.5rem}.terms-modal-content h3{color:#2d3748;font-size:1.1rem;margin:0 0 .5rem;font-weight:600}.terms-modal-content p{margin:0 0 .75rem}.terms-modal-content ul{margin:.5rem 0 .75rem 1.5rem;padding:0}.terms-modal-content li{margin-bottom:.5rem}.disclaimer-text{background:#fef2f2;border-left:4px solid #ef4444;padding:.75rem 1rem;border-radius:4px;color:#991b1b;font-size:.9rem}.disclaimer-text strong{display:block;margin-bottom:.5rem;color:#7f1d1d}.terms-modal-footer-text{margin-top:2rem;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.85rem;color:#718096}.terms-modal-footer-text a{color:#667eea;text-decoration:underline}.terms-modal-footer-text a:hover{color:#764ba2}.terms-scroll-indicator{position:sticky;bottom:0;left:0;right:0;background:linear-gradient(to top,#fff 70%,transparent);padding:1.5rem 0 .5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;color:#ef4444;font-size:.85rem;font-weight:600;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.terms-modal-footer{padding:1.5rem 2rem;border-top:1px solid #e2e8f0;background:#f7fafc;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.terms-modal-checkbox{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.terms-modal-checkbox input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:2px;cursor:pointer}.terms-modal-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.terms-modal-checkbox label{cursor:pointer;font-size:.9rem;color:#2d3748;font-weight:500}.terms-modal-actions{display:flex;gap:1rem;justify-content:flex-end}.terms-modal-button{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease-in-out;border:none}.terms-modal-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.terms-modal-button.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.terms-modal-button.primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.terms-modal-button.secondary{background:#fff;color:#718096;border:1px solid #cbd5e0}.terms-modal-button.secondary:hover:not(:disabled){background:#f7fafc;border-color:#a0aec0;color:#4a5568}.terms-modal-button.secondary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.terms-modal-container{max-height:95vh}.terms-modal-header{padding:1.5rem 1.5rem 1rem}.terms-modal-header h2{font-size:1.5rem}.terms-modal-body,.terms-modal-footer{padding:1rem 1.5rem}.terms-modal-actions{flex-direction:column-reverse}.terms-modal-button{width:100%}}.terms-container{min-height:100vh;background:#f7fafc;padding:2rem 1rem}.terms-content{max-width:900px;margin:0 auto;background:#fff;border-radius:12px;padding:3rem;box-shadow:0 4px 12px #0000001a}.terms-content h1{color:#2d3748;font-size:2.5rem;margin-bottom:.5rem;font-weight:700}.last-updated{color:#718096;font-size:.9rem;margin-bottom:2rem;font-style:italic}.terms-section{margin-bottom:2.5rem}.terms-section h2{color:#2d3748;font-size:1.5rem;margin-bottom:1rem;font-weight:600;border-bottom:2px solid #e2e8f0;padding-bottom:.5rem}.terms-section p{color:#4a5568;line-height:1.8;margin-bottom:1rem}.terms-section ul{list-style:disc;padding-left:2rem;margin-bottom:1rem}.terms-section li{color:#4a5568;line-height:1.8;margin-bottom:.5rem}.terms-section strong{color:#2d3748;font-weight:600}.disclaimer-section{background:#fff5f5;border-left:4px solid #fc8181;padding:1.5rem;border-radius:8px;margin:2rem 0}.disclaimer-section h2{color:#c53030;border-bottom-color:#fc8181}.disclaimer-text{color:#742a2a!important;font-weight:500}.disclaimer-section ul li{color:#742a2a}.disclaimer-section strong{color:#c53030;font-weight:700}.final-notice{background:#fffaf0;border-left-color:#ed8936;margin-top:3rem;padding:2rem}.final-notice p{font-size:1.1rem;text-align:center}.back-button,.back-button-bottom{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:2rem}.back-button-bottom{width:100%;margin-top:3rem;margin-bottom:0}.back-button:hover,.back-button-bottom:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media (max-width: 768px){.terms-content{padding:2rem 1.5rem}.terms-content h1{font-size:2rem}.terms-section h2{font-size:1.25rem}.disclaimer-section{padding:1rem}.final-notice p{font-size:1rem}}@media (max-width: 480px){.terms-container{padding:1rem .5rem}.terms-content{padding:1.5rem 1rem}.terms-content h1{font-size:1.75rem}.terms-section h2{font-size:1.1rem}}:root{--color-primary: #152A5E;--color-secondary: #4472C4;--color-text-light: #FFFFFF;--color-text-dark: #1a1a1a;--color-background: #f5f7fa;--color-card: #ffffff;--color-border: #e1e5eb;--color-success: #10b981;--color-warning: #f59e0b;--transition-normal: .25s ease;--spacing-md: 1rem;--spacing-lg: 1.5rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--color-background);color:var(--color-text-dark);line-height:1.6;-webkit-font-smoothing:antialiased}@media (max-width: 1024px){html,body{overflow-x:hidden;max-width:100%}}@supports (padding: env(safe-area-inset-top)){.top-header,.page-content{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}.auth-loading,.auth-error,.auth-login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:var(--color-text-light);padding:2rem}.loading-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.3);border-top-color:var(--color-text-light);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.auth-loading p,.auth-login p{font-size:1.1rem;opacity:.9}.auth-error{text-align:center}.auth-error h2{font-size:1.75rem;margin-bottom:.75rem}.auth-error p{font-size:1rem;opacity:.9;margin-bottom:1.5rem;max-width:400px}.retry-button,.login-button{background-color:var(--color-text-light);color:var(--color-primary);border:none;padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.retry-button:hover,.login-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.login-container{position:relative;background:#fff;border-radius:16px;padding:2.5rem 2rem;box-shadow:0 8px 32px #00000026;width:100%;max-width:420px}.login-logo{text-align:center;margin-bottom:.5rem}.login-tagline{text-align:center;margin-bottom:2rem;opacity:.7;font-size:1rem;color:#6b7280}.auth-form{width:100%}.auth-back-link{position:absolute;top:1rem;left:1rem;background:none;border:none;color:#64748b;font-size:.9rem;cursor:pointer;padding:.25rem 0}.auth-back-link:hover{color:#334155}.auth-form h2{text-align:center;font-size:1.5rem;font-weight:700;color:var(--color-text-dark);margin:0 0 1.5rem}.form-group{margin-bottom:1rem}.form-group input{width:100%;padding:.875rem 1rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;line-height:1.5;transition:all .2s ease;color:var(--color-text-dark);background:#fff}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4472c41a}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.form-group input::placeholder{color:#9ca3af}.forgot-password-link{display:inline-block;background:none;border:none;color:var(--color-primary);font-size:.85rem;text-decoration:none;cursor:pointer;margin-bottom:1rem;padding:0;transition:color .2s ease}.forgot-password-link:hover:not(:disabled){color:var(--color-secondary);text-decoration:underline}.forgot-password-link:disabled{opacity:.5;cursor:not-allowed}.auth-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-button.primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;box-shadow:0 2px 8px #152a5e33}.auth-button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #152a5e4d}.auth-button.google{background:#fff;border:1px solid var(--color-border);color:var(--color-text-dark)}.auth-button.google:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.auth-button.google svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;margin:1.5rem 0;color:#9ca3af;font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-divider span{padding:0 1rem}.auth-switch{text-align:center;margin-top:1.5rem;font-size:.9rem;color:#6b7280}.auth-switch button{background:none;border:none;color:var(--color-primary);font-weight:600;cursor:pointer;padding:0;text-decoration:none;transition:color .2s ease}.auth-switch button:hover:not(:disabled){color:var(--color-secondary);text-decoration:underline}.auth-switch button:disabled{opacity:.5;cursor:not-allowed}.auth-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.auth-message.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.auth-message.success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.reset-instructions{text-align:center;color:#6b7280;font-size:.9rem;line-height:1.5;margin-bottom:1.5rem}@media (max-width: 480px){.login-container{padding:2rem 1.5rem}.auth-form h2{font-size:1.25rem}.auth-button{padding:.65rem 1rem;font-size:.9rem}}.login-button{margin-top:1rem;display:flex;align-items:center;gap:.5rem}.user-profile{display:flex;align-items:center;gap:.75rem;margin-left:auto}.avatar-container{position:relative}.user-avatar{width:36px;height:36px;border-radius:50%;border:2px solid var(--color-border);object-fit:cover}.user-avatar-fallback{width:36px;height:36px;border-radius:50%;border:2px solid var(--color-border);background-color:var(--color-secondary);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-size:.85rem}.avatar-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;min-width:16px;height:16px;padding:0 4px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:2px solid white;box-shadow:0 2px 4px #0003;font-weight:600}.user-name{font-size:.9rem;font-weight:500;color:var(--color-text-dark)}.logout-button{background-color:var(--color-background);color:var(--color-text-dark);border:1px solid var(--color-border);padding:.5rem 1rem;font-size:.85rem;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.logout-button svg{flex-shrink:0}.logout-button:hover{background-color:var(--color-primary);color:var(--color-text-light);border-color:var(--color-primary)}.app-layout{display:flex;min-height:100vh;width:100%;max-width:100%;overflow-x:hidden}.sidebar{width:260px;background:linear-gradient(180deg,var(--color-primary) 0%,#0d1a3a 100%);color:var(--color-text-light);display:flex;flex-direction:column;transition:width .3s ease;position:fixed;top:0;left:0;height:100vh;z-index:100}.sidebar.collapsed{width:72px}.sidebar-header{padding:1rem 1.25rem;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1);min-height:64px}.sidebar-logo-full{height:48px;width:auto;max-width:100%}.sidebar-logo-icon{height:48px;width:48px}.sidebar.collapsed .sidebar-header{padding:1rem .5rem}.sidebar-nav{flex:1;padding:1rem .75rem;display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border-radius:8px;color:#ffffffbf;text-decoration:none;transition:all .2s ease;font-size:.95rem;font-weight:500;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.nav-item:hover{background-color:#ffffff1a;color:var(--color-text-light)}.nav-item.active{background-color:var(--color-secondary);color:var(--color-text-light);box-shadow:0 4px 12px #4472c466}.nav-icon{font-size:1.25rem;width:24px;text-align:center;flex-shrink:0;position:relative}.nav-label{white-space:nowrap}.nav-badge{background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:10px;margin-left:auto;min-width:18px;text-align:center}.nav-badge-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background:#ef4444;border-radius:50%;border:2px solid var(--color-primary)}.sidebar.collapsed .nav-label{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:.875rem}.sidebar-toggle{margin:.75rem;padding:.5rem;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:var(--color-text-light);cursor:pointer;transition:background-color .2s ease}.sidebar-toggle:hover{background-color:#fff3}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99;opacity:0;transition:opacity var(--transition-normal);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.sidebar-overlay--open{display:block;opacity:1}@media (min-width: 1025px){.sidebar-overlay--open{display:none}}.main-area{flex:1;display:flex;flex-direction:column;margin-left:260px;min-height:100vh;min-width:0;transition:margin-left .3s ease}.sidebar.collapsed+.main-area,.sidebar.collapsed~.main-area{margin-left:72px}.top-header{background-color:var(--color-card);border-bottom:1px solid var(--color-border);padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.header-left{display:flex;align-items:center;gap:1rem}.mobile-menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:48px;min-height:48px;background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;padding:8px;color:var(--color-text-light);touch-action:manipulation;-webkit-tap-highlight-color:transparent;box-shadow:0 2px 4px #152a5e33}.hamburger-line{display:block;width:24px;height:2px;background:var(--color-text-light);border-radius:2px;transition:all var(--transition-normal)}.mobile-menu-toggle--open{background:var(--color-secondary)}.mobile-menu-toggle--open .hamburger-line{background:var(--color-text-light)}.mobile-menu-toggle--open .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle--open .hamburger-line:nth-child(2){opacity:0}.mobile-menu-toggle--open .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-toggle:hover{background:var(--color-secondary)}.mobile-menu-toggle:active{background:#0d1a3a}.page-content{flex:1;padding:2rem;background-color:var(--color-background)}.app-footer{background-color:var(--color-card);border-top:1px solid var(--color-border);text-align:center;padding:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.app-footer .footer-logo{height:24px;width:24px;opacity:.7}.app-footer p{font-size:.85rem;color:#6b7280}.page{max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem;text-align:center}.page-header h1{color:var(--color-primary);font-size:1.875rem;font-weight:700;margin-bottom:.375rem}.page-subtitle{color:#6b7280;font-size:1rem}.page-actions{margin-bottom:1.5rem}.btn{padding:.75rem 1.25rem;min-height:44px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.5rem;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn-primary{background-color:var(--color-secondary);color:var(--color-text-light)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary)}.btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:4rem 2rem;background-color:var(--color-card);border-radius:12px;border:2px dashed var(--color-border);display:flex;flex-direction:column;align-items:center;gap:1.25rem}.empty-icon{font-size:4rem;color:#9ca3af}.empty-state h3{color:var(--color-primary);font-size:1.375rem;margin:0}.empty-state p{color:#6b7280;max-width:400px;margin:0;line-height:1.6}.empty-state .btn{margin-top:.5rem}.coming-soon{margin-top:1rem;font-size:.85rem;color:var(--color-secondary);font-style:italic}.dashboard-intro{background:linear-gradient(135deg,#f0fdf4,#d1fae5);border:1px solid #86efac;border-radius:12px;padding:1.25rem 1.5rem;margin:1.5rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.intro-text{flex:1;min-width:250px;font-size:.95rem;line-height:1.6;color:#166534;margin:0}.intro-text strong{color:#15803d;font-weight:600}.intro-guide-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #86efac;border-radius:8px;color:#15803d;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.intro-guide-link:hover{background:#f0fdf4;border-color:#10b981;color:#10b981;transform:translateY(-1px);box-shadow:0 2px 8px #10b98133}.welcome-empty-state{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24;border-radius:16px;padding:3rem 2rem;text-align:center;margin:2rem 0;box-shadow:0 4px 16px #fbbf2426}.empty-state-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.welcome-empty-state h2{font-size:1.75rem;font-weight:700;color:#92400e;margin:0 0 1rem}.welcome-empty-state p{font-size:1.05rem;color:#b45309;line-height:1.6;margin:0 0 1.5rem;max-width:500px;margin-left:auto;margin-right:auto}.welcome-empty-state .btn{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;padding:.75rem 2rem;margin-bottom:1rem}.empty-state-guide-link{display:inline-block;color:#92400e;font-size:.9rem;text-decoration:none;border-bottom:1px solid #92400e;transition:all .2s ease}.empty-state-guide-link:hover{color:#78350f;border-bottom-color:#78350f}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2rem}.stat-card{background-color:var(--color-card);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;box-shadow:0 2px 8px #0000000f;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.stat-card-clickable{cursor:pointer}.stat-card-clickable:hover{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.05),rgba(var(--color-secondary-rgb),.05));border-color:var(--color-secondary)}.stat-card .stat-icon{transition:color .2s ease,transform .2s ease}.stat-apartments:hover .stat-icon{color:#3b82f6;transform:scale(1.1)}.stat-upcoming:hover .stat-icon{color:#f59e0b;transform:scale(1.1)}.stat-completed:hover .stat-icon{color:#10b981;transform:scale(1.1)}.stat-shared:hover .stat-icon{color:#06b6d4;transform:scale(1.1)}.stat-card .stat-content{display:flex;flex-direction:column;align-items:center}.stat-icon{font-size:2.5rem;line-height:1}.stat-content h3{color:#6b7280;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.stat-value{color:var(--color-primary);font-size:2rem;font-weight:700;line-height:1.2}.stat-loading{display:inline-block;width:2rem;color:#9ca3af;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.stat-label{color:#9ca3af;font-size:.8rem}.add-apartment-badge{position:absolute;top:12px;right:12px;width:32px;height:32px;cursor:pointer;z-index:10}.add-apartment-badge .badge-pulse{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);animation:badge-pulse 2s ease-in-out infinite;opacity:.6}.add-apartment-badge .badge-icon{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;box-shadow:0 2px 8px #10b98166;transition:transform .2s ease,box-shadow .2s ease}.add-apartment-badge:hover .badge-icon{transform:scale(1.1);box-shadow:0 4px 16px #10b98199}.add-apartment-badge .badge-tooltip{position:absolute;top:100%;right:0;margin-top:8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.5rem .85rem;border-radius:8px;font-size:.8rem;font-weight:600;white-space:nowrap;box-shadow:0 4px 12px #10b9814d;opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .3s ease,transform .3s ease,visibility .3s ease;pointer-events:none}.add-apartment-badge .badge-tooltip:before{content:"";position:absolute;bottom:100%;right:8px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #10b981}.add-apartment-badge:hover .badge-tooltip{opacity:1;visibility:visible;transform:translateY(0)}@keyframes badge-pulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.4);opacity:0}}.stat-card{position:relative}.dashboard-section{margin-bottom:2rem}.dashboard-section h2{color:var(--color-primary);font-size:1.25rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.notes-section{margin-top:1rem}.notes-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:.5rem;border-radius:8px;transition:background-color .2s ease}.notes-header:hover{background-color:rgba(var(--color-primary-rgb),.05)}.notes-header h2{margin-bottom:0;display:flex;align-items:center;gap:.5rem}.go-to-calendar-link{display:flex;align-items:center;gap:.25rem;font-size:.85rem;color:var(--color-secondary);font-weight:500;transition:color .2s ease,transform .2s ease}.notes-header:hover .go-to-calendar-link{color:var(--color-primary);transform:translate(3px)}.today-notes-container{background:var(--color-card);border-radius:16px;padding:1.5rem;border:1px solid var(--color-border);box-shadow:0 4px 12px #0000000d}.notes-loading{color:#6b7280;text-align:center;padding:2rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.loading-spinner-small{width:18px;height:18px;border:2px solid var(--color-border);border-top-color:var(--color-secondary);border-radius:50%;animation:spin .8s linear infinite}.notes-empty{color:#9ca3af;text-align:center;padding:2.5rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.notes-empty p{font-size:1rem;font-weight:500;color:#6b7280;margin:0}.notes-empty-hint{font-size:.85rem;color:#9ca3af}.today-notes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.today-note-card{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;border:1px solid var(--color-border);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.today-note-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.today-note-card-clickable{cursor:pointer}.note-card-header{padding:.75rem 1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;justify-content:space-between;align-items:center}.note-apartment-badge{font-size:.85rem;font-weight:600;color:#fff}.note-guest-count{font-size:.75rem;color:#ffffffd9;background:#fff3;padding:.2rem .5rem;border-radius:10px}.note-card-body{padding:1rem}.note-content-text{font-size:.95rem;color:var(--color-text-dark);line-height:1.5;margin:0}.note-content-text+.note-content-text{margin-top:.5rem;padding-top:.5rem;border-top:1px dotted var(--color-border)}.note-content-empty{font-size:.9rem;color:#9ca3af;font-style:italic;margin:0}.highlight-notes{display:flex;flex-direction:column}.note-tags-section{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--color-border);display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.note-tags-label{font-size:.8rem;font-weight:600;color:#6b7280}.note-tags-text{font-size:.8rem;color:var(--color-secondary);font-weight:500}@media (max-width: 768px){.notes-header{flex-direction:column;align-items:flex-start;gap:.5rem}.today-notes-list{grid-template-columns:1fr}}.quick-actions{display:flex;gap:1rem;flex-wrap:wrap}.action-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background-color:var(--color-card);border:1px solid var(--color-border);border-radius:10px;text-decoration:none;color:var(--color-text-dark);transition:all .2s ease}.action-card:hover{border-color:var(--color-secondary);box-shadow:0 4px 12px #4472c426}.action-icon{font-size:1.5rem}.action-label{font-weight:500}.setup-notice{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background-color:#fef3c7;border-radius:10px;border-left:4px solid #f59e0b}.notice-icon{font-size:1.5rem}.notice-content strong{color:#92400e;display:block;margin-bottom:.25rem}.notice-content p{color:#a16207;font-size:.9rem;margin:0}.settings-section{margin-bottom:2rem}.settings-section h2{color:var(--color-primary);font-size:1.125rem;margin-bottom:.75rem}.settings-card{background-color:var(--color-card);border-radius:10px;padding:1.25rem;border:1px solid var(--color-border)}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.setting-row:last-child{border-bottom:none}.setting-row label{color:#6b7280;font-size:.9rem}.setting-row span{font-weight:500}.subscription-info p{margin:.5rem 0}@media (max-width: 1024px){.sidebar{width:280px;transform:translate(-100%);transition:transform var(--transition-normal);box-shadow:4px 0 24px #00000026}.sidebar.open{transform:translate(0)}.sidebar.collapsed .nav-label,.sidebar.open .nav-label{display:inline}.sidebar.collapsed .nav-item,.sidebar.open .nav-item{justify-content:flex-start;padding:.875rem 1rem}.sidebar-toggle-desktop{display:none}.sidebar .nav-item{min-height:48px;padding:14px 1rem}.main-area{margin-left:0}.sidebar.collapsed+.main-area,.sidebar.collapsed~.main-area{margin-left:0}.mobile-menu-toggle{display:flex}}@media (max-width: 768px){.page-content{padding:1rem}.calendar-page{overflow-x:hidden;max-width:100%}.calendar-page .calendar-header,.calendar-page .calendar-grid-container{max-width:100%}.calendar-page .calendar-weekdays,.calendar-page .calendar-grid{min-width:0}.page-header h1{font-size:1.5rem}.dashboard-intro{flex-direction:column;align-items:flex-start;padding:1rem}.intro-text{font-size:.9rem;min-width:100%}.intro-guide-link{width:100%;justify-content:center}.welcome-empty-state{padding:2rem 1.5rem}.empty-state-icon{font-size:3rem}.welcome-empty-state h2{font-size:1.5rem}.welcome-empty-state p{font-size:.95rem}.dashboard-grid{grid-template-columns:1fr}.stat-card{padding:1rem}.stat-value{font-size:1.5rem}.quick-actions{flex-direction:column}.user-name{display:none}.user-profile{gap:.5rem}.top-header{padding:.75rem 1rem;min-width:0;overflow-x:hidden}.user-profile{min-width:0;flex-shrink:1}.btn{min-height:48px;padding:14px 20px}.btn:active{transform:scale(.98)}.logout-button{min-height:48px;padding:.75rem 1rem}.logout-button:active{opacity:.9}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=search],select,textarea{font-size:16px;min-height:48px;padding:12px 16px;touch-action:manipulation}textarea{min-height:100px}.stat-card,.apartment-card,.share-request-card{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.stat-card:active,.apartment-card:active{transform:scale(.99)}}@media (max-width: 480px){.logout-button-text{display:none}.logout-button{padding:.5rem}}@media (prefers-reduced-motion: reduce){.btn:active,.stat-card:active,.apartment-card:active{transform:none}}.app{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--color-primary);color:var(--color-text-light);padding:1rem 2rem;box-shadow:0 2px 8px #00000026}.header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:1rem}.logo{height:40px;width:auto}.app-title{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.main-content{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.welcome-card{background-color:var(--color-card);border-radius:12px;padding:2.5rem;box-shadow:0 4px 12px #00000014;text-align:center}.welcome-card h2{color:var(--color-primary);font-size:2rem;margin-bottom:.5rem}.welcome-card>p{color:#6b7280;font-size:1.1rem;margin-bottom:2rem}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:2rem 0}.feature{background:linear-gradient(135deg,var(--color-background) 0%,#ffffff 100%);border:1px solid var(--color-border);border-radius:10px;padding:1.5rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.feature:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.feature-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.feature h3{color:var(--color-primary);font-size:1.1rem;margin-bottom:.5rem}.feature p{color:#6b7280;font-size:.9rem}.cta-section{margin-top:2rem}.setup-note{background-color:#fef3c7;color:#92400e;padding:1rem 1.5rem;border-radius:8px;font-size:.95rem;display:inline-block}.footer{background-color:var(--color-primary);color:var(--color-text-light);text-align:center;padding:1rem;margin-top:auto}.footer p{font-size:.9rem;opacity:.9}.apartments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem}.draggable-card{cursor:grab;transition:transform .15s ease,opacity .15s ease}.draggable-card:active{cursor:grabbing}.draggable-card:hover{transform:scale(1.01)}.draggable-card[draggable=true]:active{opacity:.7;transform:scale(1.02)}.apartments-grid.dragging .draggable-card{transition:transform .2s ease}.apartments-grid.dragging .draggable-card:hover{transform:scale(1.02);box-shadow:0 8px 24px #00000026}.draggable-card:before{content:"⋮⋮";position:absolute;top:50%;left:-20px;transform:translateY(-50%);color:#ccc;font-size:1rem;opacity:0;transition:opacity .2s ease;pointer-events:none}.draggable-card:hover:before{opacity:.6}.draggable-card{position:relative}.apartment-card{background:var(--color-card);border-radius:12px;border:1px solid var(--color-border);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.apartment-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.apartment-header{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:var(--color-text-light)}.apartment-icon{font-size:2.5rem;flex-shrink:0}.apartment-info{flex:1;min-width:0;overflow:hidden}.apartment-name{font-size:1.15rem;font-weight:600;margin:0 0 .25rem;word-wrap:break-word;overflow-wrap:break-word;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.15);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.apartment-address{font-size:.85rem;opacity:.9;margin:0;color:#ffffffe6;word-wrap:break-word;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.apartment-header .apartment-name{color:#fff!important}.apartment-header .apartment-address{color:#ffffffe6!important}.apartment-actions{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0}.btn-icon{background:#fff3;border:none;border-radius:5px;padding:.4rem;cursor:pointer;font-size:.9rem;transition:background .2s ease;line-height:1}.btn-icon:hover{background:#ffffff59}.btn-icon.btn-danger{background:#fff3}.btn-icon.btn-danger:hover{background:#ffffff59}.apartment-description{padding:1rem 1.25rem;color:#6b7280;font-size:.9rem;border-bottom:1px solid var(--color-border);margin:0}.apartment-details-section{padding:1rem 1.25rem;background:var(--color-background);border-top:1px solid var(--color-border)}.apartment-detail-row{display:flex;gap:1.5rem;margin-bottom:.75rem}.apartment-detail-row:last-child{margin-bottom:0}.apartment-detail-item{display:flex;align-items:center;gap:.5rem;flex:1}.apartment-detail-item .detail-icon{flex-shrink:0;color:var(--color-text-muted)}.apartment-detail-item .detail-icon.check-in-icon{color:#10b981}.apartment-detail-item .detail-icon.check-out-icon{color:#f59e0b}.apartment-detail-item .detail-icon.pin-icon{color:#6366f1}.apartment-detail-item .detail-label{font-size:.85rem;color:var(--color-text-muted);font-weight:500}.apartment-detail-item .detail-value{font-size:.9rem;color:var(--color-text);font-weight:600}.apartment-detail-item .detail-value.pin-value{font-family:Courier New,Courier,monospace;letter-spacing:2px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);padding:.2rem .5rem;border-radius:4px;color:#4f46e5}.apartment-ical-section{padding:1rem 1.25rem}.ical-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.ical-header h4{font-size:.9rem;font-weight:600;color:var(--color-primary);margin:0}.ical-links{display:flex;flex-direction:column;gap:.75rem}.ical-link-item{background:var(--color-background);border-radius:8px;padding:.75rem}.ical-link-info{display:flex;gap:.5rem;margin-bottom:.5rem}.ical-source-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;background:var(--color-secondary);color:var(--color-text-light)}.ical-status{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.ical-status.status-success{background:#d1fae5;color:#047857}.ical-status.status-error{background:#fee2e2;color:#dc2626}.ical-status.status-pending{background:#fef3c7;color:#d97706}.ical-status.status-default{background:#e5e7eb;color:#6b7280}.ical-link-url{font-size:.8rem;color:#6b7280;word-break:break-all;margin-bottom:.25rem}.ical-link-sync{font-size:.75rem;color:#9ca3af}.sync-error{margin-left:.5rem;cursor:help}.no-links{color:#9ca3af;font-size:.9rem;text-align:center;padding:1rem 0}.apartment-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--color-border);background:var(--color-background)}.apartment-footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.apartment-created{font-size:.8rem;color:#9ca3af}.apartment-card.shared-apartment{border:2px solid var(--color-secondary);position:relative}.apartment-card.owned-apartment{border:2px solid var(--color-primary);position:relative}.apartment-card.clickable{cursor:pointer}.apartment-card.clickable:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000026}.apartment-card.clickable:active{transform:translateY(-2px)}.apartment-badge{position:absolute;top:0;left:0;color:#fff;padding:.2rem .5rem;border-radius:8px 0;font-size:.65rem;font-weight:600;display:flex;align-items:center;gap:.2rem;z-index:10}.apartment-badge.badge-shared,.apartment-badge.badge-owner{background:var(--color-secondary);transition:background-color .2s ease,color .2s ease,background .2s ease}.apartment-card:hover .apartment-badge.badge-owner{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f}.apartment-card:hover .apartment-badge.badge-shared{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#0c4a6e}.apartment-badge .badge-icon{font-size:.6rem}.apartment-badge .badge-icon svg{width:10px;height:10px}.shared-badge{position:absolute;top:0;left:0;background:var(--color-secondary);color:#fff;padding:.3rem .75rem;border-radius:10px 0;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.3rem}.apartment-details-view{padding:.5rem 0}.apartment-details-view .details-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid var(--color-border)}.apartment-details-view .details-icon{width:72px;height:72px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.apartment-details-view .details-title h2{margin:0 0 .5rem;font-size:1.5rem;color:var(--color-text)}.apartment-details-view .details-address{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:.95rem;margin:0}.apartment-details-view .details-owner-banner{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1;padding:.75rem 1rem;border-radius:10px;margin-bottom:1.5rem;font-size:.9rem}.apartment-details-view .details-section{margin-bottom:1.5rem}.apartment-details-view .details-section h4{font-size:.9rem;font-weight:600;color:var(--color-primary);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.apartment-details-view .details-description{color:var(--color-text);line-height:1.6;margin:0;padding:.75rem;background:var(--color-background);border-radius:8px}.apartment-details-view .details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.apartment-details-view .detail-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--color-background);border-radius:10px;border:1px solid var(--color-border)}.apartment-details-view .detail-item .detail-icon{flex-shrink:0}.apartment-details-view .detail-item .detail-icon.check-in{color:#10b981}.apartment-details-view .detail-item .detail-icon.check-out{color:#f59e0b}.apartment-details-view .detail-item .detail-icon.pin{color:#6366f1}.apartment-details-view .detail-item .detail-emoji{font-size:1.25rem}.apartment-details-view .detail-item .detail-content{display:flex;flex-direction:column;gap:.25rem}.apartment-details-view .detail-item .detail-label{font-size:.8rem;color:var(--color-text-muted);font-weight:500}.apartment-details-view .detail-item .detail-value{font-size:1rem;color:var(--color-text);font-weight:600}.apartment-details-view .detail-item .detail-value.pin-code{font-family:Courier New,Courier,monospace;letter-spacing:2px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);padding:.25rem .5rem;border-radius:4px;color:#4f46e5}.apartment-details-view .details-actions{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--color-border);margin-top:1rem}.shared-icon{font-size:.9rem}.apartment-owner{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-left:auto}.owner-label{color:#6b7280}.owner-name{color:var(--color-secondary);font-weight:600}.apartments-section{margin-bottom:2rem}.apartments-section .section-title{font-size:1.25rem;color:var(--color-text-dark);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.apartments-section .section-title svg{color:var(--color-secondary)}.sharing-info-badge{position:relative;margin-left:.5rem}.sharing-badge-icon{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);border:2px solid #60a5fa;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;animation:sharing-pulse 2s ease-in-out infinite;color:#fff;padding:0}.sharing-badge-icon svg{color:#fff;stroke:#fff;fill:none}.sharing-badge-icon:hover{transform:scale(1.1);box-shadow:0 4px 12px #3b82f666;animation:none}@keyframes sharing-pulse{0%,to{box-shadow:0 0 #3b82f6b3}50%{box-shadow:0 0 0 8px #3b82f600}}.sharing-tooltip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);background:#fff;border:2px solid #3b82f6;border-radius:12px;padding:.75rem;box-shadow:0 8px 24px #00000026;z-index:1000;width:260px;max-width:80vw;animation:tooltipFadeIn .2s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.sharing-tooltip:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:8px solid transparent;border-top-color:#3b82f6}.sharing-tooltip-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem;color:#3b82f6;font-size:.95rem}.sharing-tooltip-header svg{flex-shrink:0;width:18px;height:18px}.sharing-tooltip-text{color:var(--color-text-dark);font-size:.8rem;line-height:1.3}.sharing-tooltip-text p{margin:0 0 .4rem}.sharing-tooltip-text ul{margin:0 0 .5rem;padding-left:0;list-style:none}.sharing-tooltip-text li{padding:.3rem 0;border-bottom:1px solid #e5e7eb;font-size:.8rem}.sharing-tooltip-text li:last-child{border-bottom:none}.sharing-tooltip-cta{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:3px solid #3b82f6;padding:.4rem;border-radius:6px;margin-bottom:0!important;font-size:.75rem}.sharing-tooltip-cta strong{color:#3b82f6}.sharing-tooltip-cta a{color:#3b82f6;text-decoration:underline;font-weight:600}.sharing-tooltip-cta a:hover{color:#2563eb}.apartments-section .section-description{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.apartments-section.shared-section{border-top:2px solid var(--color-border);padding-top:2rem}.btn-sm{padding:.4rem .75rem;font-size:.85rem}.btn-secondary{background:var(--color-background);color:var(--color-text-dark);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-danger{background:#ef4444;color:var(--color-text-light)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-outline-danger{background:transparent;color:#ef4444;border:1px solid #ef4444}.btn-outline-danger:hover:not(:disabled){background:#fef2f2;border-color:#dc2626;color:#dc2626}.btn-outline-danger.btn-sm{padding:.35rem .6rem;font-size:.85rem}.btn-with-icon{display:inline-flex;align-items:center;gap:.4rem}.btn-with-icon svg{flex-shrink:0}.btn-icon-only{padding:.5rem;display:inline-flex;align-items:center;justify-content:center}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.loading-state,.error-state{text-align:center;padding:4rem 2rem;background:var(--color-card);border-radius:12px;border:1px solid var(--color-border)}.error-icon{font-size:4rem;margin-bottom:1rem}.error-state h3{color:#dc2626;margin-bottom:.5rem}.error-state p{color:#6b7280;margin-bottom:1rem}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--color-card);border-radius:12px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:750px}.modal-large{width:100%;max-width:900px}.modal-xlarge{width:100%;max-width:1000px}.modal-xxlarge{width:100%;max-width:1200px}.modal-header{display:flex;justify-content:center;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border);position:relative}.modal-header h2{font-size:1.25rem;color:var(--color-primary);margin:0;display:flex;align-items:center;gap:.5rem}.modal-title-icon{display:inline-flex;align-items:center}.modal-close{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;padding:.25rem;line-height:1}.modal-close:hover{color:var(--color-text-dark)}.modal-body{padding:1.5rem}.apartment-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--color-text-dark);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.label-with-icon{display:flex;align-items:center;gap:.5rem}.ical-help-badge{position:relative;width:24px;height:24px;cursor:pointer;flex-shrink:0}.help-badge-icon{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;box-shadow:0 2px 6px #3b82f64d;transition:transform .2s ease,box-shadow .2s ease}.ical-help-badge:hover .help-badge-icon{transform:scale(1.1);box-shadow:0 4px 12px #3b82f680}.help-tooltip{position:absolute;bottom:calc(100% + 8px);right:0;min-width:320px;max-width:400px;background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:1rem;box-shadow:0 8px 24px #00000026;z-index:1000;animation:tooltip-fade-in .2s ease}.help-tooltip:before{content:"";position:absolute;top:100%;right:8px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid white;filter:drop-shadow(0 2px 2px rgba(0,0,0,.05))}.help-tooltip-header{margin-bottom:.75rem;color:var(--color-primary);font-size:.9rem}.help-tooltip-text{margin:0;font-size:.85rem;color:var(--color-text-dark);line-height:1.6}.help-tooltip-steps{margin:0;padding-left:1.25rem;font-size:.85rem;color:var(--color-text-dark);line-height:1.6}.help-tooltip-steps li{margin-bottom:.5rem}.help-tooltip-steps li:last-child{margin-bottom:0}.help-tooltip-steps strong{color:var(--color-primary);font-weight:600}@keyframes tooltip-fade-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.form-hint{display:block;font-size:.8rem;color:#6b7280;margin-top:.25rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #4472c41a}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.error-message{color:#ef4444;font-size:.8rem}.ical-sync-section{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #3b82f6;border-radius:12px;padding:1.25rem;margin:.5rem 0;display:flex;flex-direction:column;gap:1rem}.ical-sync-header{display:flex;align-items:center;gap:.5rem;color:#1e40af;font-weight:600;font-size:.95rem}.ical-sync-header svg{color:#3b82f6;animation:lightning-pulse 2s ease-in-out infinite}@keyframes lightning-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.ical-sync-description{font-size:.85rem;color:#1e40af;margin:0;line-height:1.5}.form-divider{display:flex;align-items:center;gap:1rem;margin:.5rem 0}.form-divider:before,.form-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.form-divider span{font-size:.85rem;color:#6b7280;white-space:nowrap}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.delete-confirmation{text-align:center}.delete-confirmation p{margin-bottom:1rem}.delete-confirmation .warning-text{color:#dc2626;font-size:.9rem;background:#fee2e2;padding:.75rem;border-radius:8px}.delete-confirmation .form-actions{justify-content:center;margin-top:1.5rem}.ical-link-manager h3{font-size:1rem;color:var(--color-primary);margin-bottom:1.5rem}.ical-link-manager h4{font-size:.9rem;font-weight:600;color:#6b7280;margin-bottom:.75rem}.existing-links{margin-bottom:2rem}.links-list{display:flex;flex-direction:column;gap:1rem}.link-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;background:var(--color-background);border-radius:8px;border:1px solid var(--color-border)}.link-details{flex:1;min-width:0}.link-header{display:flex;gap:.5rem;margin-bottom:.5rem}.source-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;background:var(--color-secondary);color:var(--color-text-light)}.sync-status{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem}.link-url{font-size:.85rem;color:var(--color-text-dark);word-break:break-all;margin-bottom:.5rem}.link-meta{font-size:.8rem;color:#9ca3af}.error-text{display:block;color:#dc2626;margin-top:.25rem}.link-actions{display:flex;gap:.5rem;flex-shrink:0}.no-links-message{color:#9ca3af;text-align:center;padding:1rem}.add-link-section{padding-top:1rem;border-top:1px solid var(--color-border)}.add-link-form{display:flex;flex-direction:column;gap:.75rem}.form-row{display:flex;gap:.75rem}.form-row .form-group{flex:1}.form-row select{padding:.75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;min-width:140px;width:100%}.time-select{cursor:pointer;background-color:var(--color-card)}.form-row input{flex:1;padding:.75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem}.form-row input.error{border-color:#ef4444}.form-group-price{flex:2}.form-group-price input{height:48px}.form-group-currency{flex:1;min-width:100px}.form-group-currency select{width:100%;height:48px;padding:.75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;background-color:#fff}.manager-actions{margin-top:1.5rem;display:flex;justify-content:flex-end}.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;border-radius:8px;font-weight:500;box-shadow:0 4px 20px #0003;z-index:2000;animation:slideIn .3s ease}.toast-success{background:#047857;color:#fff}.toast-error{background:#dc2626;color:#fff}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.apartments-grid{grid-template-columns:1fr}.apartment-header{flex-wrap:wrap}.apartment-actions{flex-direction:row;width:auto;justify-content:flex-end;margin-top:0}.link-item{flex-direction:column}.link-actions{width:100%;justify-content:flex-end}.form-row{flex-direction:column}.toast{left:1rem;right:1rem;bottom:1rem}}.calendar-page{max-width:1400px;margin:0 auto;width:100%;box-sizing:border-box}.calendar-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background-color:var(--color-card);border-radius:12px;box-shadow:0 2px 8px #0000000d;min-width:0;overflow:hidden}.calendar-nav{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;min-width:0}.calendar-title{font-size:1.5rem;color:var(--color-primary);min-width:200px;text-align:center}.calendar-filters{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;min-width:0}.filter-group{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1 1 auto}.filter-label{font-size:.85rem;color:#6b7280;font-weight:500}.owner-select,.apartment-select{padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:8px;font-size:.9rem;min-width:160px;max-width:100%;background:var(--color-card);cursor:pointer}.owner-select:focus,.apartment-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.2)}.apartment-select{min-width:180px;background-color:var(--color-background);cursor:pointer}.apartment-select:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #4472c433}.calendar-legend{display:flex;gap:1rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#6b7280}.legend-dot{width:12px;height:12px;border-radius:50%}.legend-pending{background-color:#f59e0b}.legend-in-progress{background-color:#3b82f6}.legend-cleaned{background-color:#10b981}.legend-cancelled{background-color:#dc2626}.legend-no-status{background-color:#9ca3af}.calendar-grid-container{background-color:var(--color-card);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;width:100%;max-width:100%;min-width:0}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background-color:var(--color-primary)}.weekday-header{padding:.75rem;text-align:center;color:var(--color-text-light);font-weight:600;font-size:.9rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(140px,auto);border-left:1px solid var(--color-border);border-top:1px solid var(--color-border)}.calendar-day{padding:.5rem;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background-color:var(--color-card);cursor:pointer;transition:background-color .2s ease;display:flex;flex-direction:column;min-height:140px;min-width:0;overflow:hidden}.calendar-day:hover{background-color:#f0f4f8}.calendar-day.other-month{background-color:#f9fafb}.calendar-day.other-month .day-number{color:#9ca3af}.calendar-day.today{background-color:#eff6ff}.calendar-day.has-events{background-color:#fefce8}.calendar-day.today.has-events{background-color:#ecfdf5}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.day-number{font-weight:600;font-size:.95rem;color:var(--color-text-dark)}.today-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:var(--color-secondary);color:var(--color-text-light);border-radius:50%}.event-count{font-size:.75rem;padding:.15rem .5rem;background-color:var(--color-secondary);color:var(--color-text-light);border-radius:10px}.day-events{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0;overflow:hidden}.calendar-event{padding:.3rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:.25rem;transition:transform .1s ease,box-shadow .1s ease;min-width:0;max-width:100%}.calendar-event:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.event-content{display:flex;align-items:center;flex:1;min-width:0;overflow:hidden}.event-apartment-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-icons{display:flex;align-items:center;gap:.3rem;flex-shrink:0;margin-left:.35rem}.event-guests{font-size:.7rem;opacity:.8}.event-notes-icon{font-size:.75rem;animation:pulse-note 2s infinite}@keyframes pulse-note{0%,to{opacity:1}50%{opacity:.6}}.event-pending{background-color:#f3f4f6;border-left:3px solid #9ca3af;color:#4b5563}.event-in-progress{background-color:#dbeafe;border-left:3px solid #3b82f6;color:#1e40af}.event-cleaned{background-color:#d1fae5;border-left:3px solid #10b981;color:#065f46}.event-cancelled{background-color:#fef2f2;border-left:3px solid #dc2626;color:#b91c1c}.event-no-status{background-color:#f3f4f6;border-left:3px solid #d1d5db;color:#6b7280}.status-indicator{display:inline-flex;align-items:center;margin-right:.25rem;flex-shrink:0}.status-indicator.status-complete svg{color:#10b981}.status-indicator.status-in-progress svg{color:#3b82f6;animation:spin 1.5s linear infinite}.status-indicator.status-cancelled{color:#dc2626;font-size:.75rem;font-weight:600}.calendar-day.day-all-complete{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#10b981}.calendar-day.day-all-complete .day-header{color:#065f46}.calendar-day.day-all-complete .day-number{color:#065f46;font-weight:600}.day-complete-icon{display:inline-flex;align-items:center;justify-content:center;background:#10b981;color:#fff;border-radius:50%;width:18px;height:18px;margin-left:.25rem}.day-complete-icon svg{color:#fff}.calendar-day.day-in-progress{border-color:#3b82f6}.calendar-day.day-in-progress .event-count{background:#3b82f6}.more-events{font-size:.7rem;color:#6b7280;text-align:center;padding:.2rem}.more-events-indicator{display:flex;align-items:center;justify-content:center;gap:.2rem;padding:.15rem .4rem;margin-top:.15rem;background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;cursor:pointer;flex-shrink:0}.more-events-indicator svg{width:12px;height:12px}.more-events-indicator .more-count{font-weight:800}.calendar-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background-color:var(--color-card);border-radius:12px}.calendar-fix-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;margin-bottom:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b}.calendar-fix-banner button{flex-shrink:0}.calendar-error{margin-bottom:1rem}.calendar-empty-notice{text-align:center;padding:2rem;background-color:var(--color-card);border-radius:12px;margin-top:1rem;color:#6b7280}.calendar-empty-notice .hint{font-size:.9rem;margin-top:.5rem;color:#9ca3af}.day-events-detail{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (max-width: 768px){.day-events-detail{grid-template-columns:1fr}}.event-detail-card{padding:1rem;background-color:var(--color-background);border-radius:8px;border:1px solid var(--color-border)}.event-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.event-detail-header h3{font-size:1.1rem;color:var(--color-primary);margin:0}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.status-0{background-color:#fef3c7;color:#92400e}.status-badge.status-1{background-color:#dbeafe;color:#1e40af}.status-badge.status-2{background-color:#d1fae5;color:#065f46}.status-badge.status-3{background-color:#fef2f2;color:#b91c1c}.status-badge.status-none{background-color:#f3f4f6;color:#4b5563}.event-detail-info{display:flex;flex-direction:column;gap:.5rem}.event-detail-info p{margin:0;font-size:.9rem;color:#4b5563}.event-detail-info strong{color:var(--color-text-dark)}.modal-empty-state{text-align:center;padding:2rem;color:#6b7280}.modal-empty-state .btn{margin-top:1rem}.modal-header-actions{display:flex;justify-content:flex-end;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.manual-checkout-modal{display:flex;flex-direction:column;gap:1.5rem}.modal-intro{display:flex;gap:1rem;padding:1rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:8px;border:1px solid #3b82f6}.modal-intro svg{color:#3b82f6;flex-shrink:0}.modal-intro h3{margin:0 0 .25rem;color:var(--color-primary);font-size:1.1rem}.modal-intro .date-display{font-weight:600;color:#1e40af;margin:0 0 .25rem}.modal-intro .hint-text{font-size:.85rem;color:#6b7280;margin:0}.select-all-container{padding:.75rem 1rem;background:var(--color-background);border-radius:8px;border:1px solid var(--color-border)}.apartments-list{max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.apartment-checkbox-item{display:flex;align-items:center;gap:.75rem;padding:1rem;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--color-border)}.apartment-checkbox-item:last-child{border-bottom:none}.apartment-checkbox-item:hover{background:var(--color-background)}.apartment-checkbox-item input[type=checkbox]{cursor:pointer;width:18px;height:18px;flex-shrink:0}.apartment-checkbox-item .apartment-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.apartment-checkbox-item .apartment-name{font-weight:600;color:var(--color-text-dark)}.apartment-checkbox-item .apartment-address{font-size:.85rem;color:#6b7280}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:var(--color-text-dark)}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.empty-apartments{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;text-align:center}.empty-apartments svg{color:#9ca3af}.empty-apartments h4{margin:0;color:var(--color-text-dark);font-size:1.25rem}.empty-apartments p{margin:0;color:#6b7280;max-width:400px;line-height:1.6}.empty-apartments .btn{margin-top:.5rem}.empty-apartments{text-align:center;padding:2rem;color:#6b7280}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid var(--color-border)}@media (max-width: 1024px){.calendar-header{flex-direction:column;align-items:stretch}.calendar-nav,.calendar-filters{justify-content:center;flex-wrap:wrap}.calendar-legend{justify-content:center}.calendar-title{min-width:auto}.owner-select,.apartment-select{min-width:0;flex:1 1 120px}.filter-group{flex:1 1 auto;min-width:0}}@media (max-width: 768px){.calendar-header{padding:.75rem}.calendar-nav{width:100%;justify-content:center;gap:.5rem;flex-wrap:wrap}.calendar-title{font-size:1.2rem;min-width:auto;flex:1 1 auto;text-align:center}.view-mode-toggle{margin-left:0;flex-shrink:0}.calendar-filters{width:100%;flex-wrap:wrap;gap:.75rem}.filter-group{flex-direction:row;align-items:center}.owner-select,.apartment-select{min-width:120px;max-width:180px;width:auto}.calendar-legend{width:100%;justify-content:center;flex-wrap:wrap}.calendar-grid{grid-auto-rows:minmax(120px,auto)}.calendar-day{padding:.25rem;min-height:120px}.day-number{font-size:.85rem}.today-number{width:24px;height:24px;font-size:.8rem}.calendar-event{padding:.2rem .3rem;font-size:.65rem}.event-guests{display:none}.tag-display-icon{width:16px;height:16px}.tag-display-icon svg{width:9px;height:9px}.weekday-header{padding:.5rem;font-size:.75rem}}@media (max-width: 480px){.calendar-header{padding:.5rem}.calendar-nav{width:100%;flex-wrap:wrap;justify-content:center;gap:.5rem}.calendar-nav .btn-icon-only{flex-shrink:0}.calendar-title{font-size:1.1rem;flex:1 1 auto;min-width:0;text-align:center}.calendar-page .view-mode-toggle{flex:1 1 100%;justify-content:center}.calendar-filters{flex-direction:column;align-items:stretch;gap:.5rem}.filter-group{flex-direction:row;align-items:center;width:100%;min-width:0}.owner-select,.apartment-select{flex:1 1 auto;min-width:100px;max-width:200px}.calendar-grid{grid-auto-rows:minmax(60px,auto)}.calendar-day{min-height:60px;padding:.2rem}.day-events{display:none}.event-count{font-size:.65rem;padding:.1rem .3rem}.calendar-legend{display:none}.weekday-header{padding:.35rem .25rem;font-size:.65rem}}.cleaning-status-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border-radius:20px;font-weight:600;text-transform:uppercase}.status-dot{width:8px;height:8px;border-radius:50%;background-color:var(--status-color, #9ca3af)}.status-badge-sm{font-size:.65rem;padding:.2rem .5rem}.status-badge-sm .status-dot{width:6px;height:6px}.status-badge-md{font-size:.75rem}.status-badge-lg{font-size:.85rem;padding:.5rem 1rem}.status-badge-lg .status-dot{width:10px;height:10px}.cleaning-status-badge.status-0{background-color:#fef3c7;color:#92400e}.cleaning-status-badge.status-0 .status-dot{background-color:#f59e0b}.cleaning-status-badge.status-1{background-color:#dbeafe;color:#1e40af}.cleaning-status-badge.status-1 .status-dot{background-color:#3b82f6}.cleaning-status-badge.status-2{background-color:#d1fae5;color:#065f46}.cleaning-status-badge.status-2 .status-dot{background-color:#10b981}.cleaning-status-badge.status-3{background-color:#e5e7eb;color:#4b5563}.cleaning-status-badge.status-3 .status-dot{background-color:#6b7280}.cleaning-status-badge.status--1{background-color:#f3f4f6;color:#4b5563}.cleaning-status-badge.status--1 .status-dot{background-color:#9ca3af}.cleaning-status-card{background-color:var(--color-card);border:3px solid var(--color-secondary);border-radius:12px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 3px 10px #0000001a;transition:border-color .2s ease,box-shadow .2s ease}.cleaning-status-card:hover{border-color:var(--color-primary);box-shadow:0 6px 20px #152a5e26}.cleaning-status-card:last-child{margin-bottom:0}.status-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.status-card-header h3{font-size:1.15rem;color:var(--color-primary);margin:0 0 .25rem}.apartment-info .apartment-address{font-size:.85rem;color:#6b7280;margin:0}.status-card-details{margin-bottom:1rem}.apartment-times-row{display:flex;gap:1rem;padding:.75rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;margin-bottom:.75rem;flex-wrap:wrap}.apartment-times-row .time-item{display:flex;align-items:center;gap:.4rem;flex:1;min-width:120px}.apartment-times-row .time-icon{flex-shrink:0}.apartment-times-row .time-icon.check-in{color:#10b981}.apartment-times-row .time-icon.check-out{color:#f59e0b}.apartment-times-row .time-icon.pin{color:#6366f1}.apartment-times-row .time-label{font-size:.8rem;color:#6b7280;font-weight:500}.apartment-times-row .time-value{font-size:.9rem;font-weight:600;color:var(--color-text)}.apartment-times-row .time-value.pin-value{font-family:Courier New,Courier,monospace;letter-spacing:1px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);padding:.15rem .4rem;border-radius:4px;color:#4f46e5}.detail-row{display:flex;gap:.5rem;margin-bottom:.5rem;font-size:.9rem}.detail-row:last-child{margin-bottom:0}.detail-label{color:#6b7280;min-width:80px}.detail-value{color:var(--color-text-dark);font-weight:500}.notes-row{flex-direction:column;gap:.25rem}.notes-row .detail-value{font-weight:400;padding:.5rem;background-color:var(--color-background);border-radius:6px;font-size:.85rem}.status-card-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.status-update-controls{padding-top:1rem;border-top:1px solid var(--color-border)}.status-buttons{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.status-btn{flex:1;min-width:100px;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:8px;background-color:var(--color-background);cursor:pointer;font-weight:500;font-size:.85rem;transition:all .2s ease}.status-btn:hover:not(:disabled){border-color:var(--color-secondary)}.status-btn:disabled{opacity:.6;cursor:not-allowed}.status-btn.selected{border-width:2px}.status-btn-0{color:#92400e}.status-btn-0:hover:not(:disabled),.status-btn-0.selected{background-color:#fef3c7;border-color:#f59e0b}.status-btn-1{color:#1e40af}.status-btn-1:hover:not(:disabled),.status-btn-1.selected{background-color:#dbeafe;border-color:#3b82f6}.status-btn-2{color:#065f46}.status-btn-2:hover:not(:disabled),.status-btn-2.selected{background-color:#d1fae5;border-color:#10b981}.status-btn-3{color:#b91c1c}.status-btn-3:hover:not(:disabled),.status-btn-3.selected{background-color:#fef2f2;border-color:#dc2626}.update-actions{display:flex;justify-content:flex-end;gap:.75rem}@media (max-width: 480px){.status-card-header{flex-direction:column;gap:.75rem}.status-buttons{flex-direction:column}.status-btn{min-width:auto}.detail-row{flex-direction:column;gap:.15rem}.detail-label{min-width:auto;font-size:.8rem}}.status-card-notes{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.status-card-position{margin-top:1rem;padding-top:.75rem;border-top:1px dashed var(--color-border);text-align:center}.position-indicator{display:inline-block;font-size:.875rem;font-weight:700;color:var(--color-primary);background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.1),rgba(var(--color-secondary-rgb),.1));padding:.25rem .75rem;border-radius:12px;letter-spacing:.5px}.position-text{margin-left:.5rem;font-size:.8rem;color:#6b7280;font-weight:500}.cleaning-tags{padding:1rem;border-top:1px solid var(--color-border);background:#f8fafc}.cleaning-tags-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.tags-label{font-size:.85rem;font-weight:600;color:#374151}.tags-saving{font-size:.75rem;color:var(--color-secondary);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.cleaning-tags-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.tags-description{font-size:.875rem;font-weight:500;color:var(--color-primary);background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.1),rgba(var(--color-secondary-rgb),.1));padding:.375rem .75rem;border-radius:20px;border:1px solid rgba(var(--color-primary-rgb),.3);margin-left:.5rem;white-space:nowrap}.cleaning-tag-btn{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;border:2px solid var(--color-border);border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;font-size:.9rem}.cleaning-tag-btn:hover:not(:disabled){border-color:var(--color-secondary);background:#f0f7ff}.cleaning-tag-btn.active{border-color:var(--color-primary);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff}.cleaning-tag-btn:disabled{opacity:.6;cursor:not-allowed}.tag-icon{font-size:1rem}.cleaning-tags-display{display:inline-flex;gap:.3rem}.tag-display-icon{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;padding:0 5px;border-radius:9px;font-size:.7rem;font-weight:700;line-height:18px;box-shadow:0 1px 3px #0003}.tag-display-icon svg{width:11px;height:11px}.tag-number{font-weight:800;font-size:.65rem;letter-spacing:0;line-height:18px;height:18px;display:inline-block;vertical-align:middle}.tag-display-icon.tag-extraBed1{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.tag-display-icon.tag-extraBed2{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.tag-display-icon.tag-crib{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.tag-display-icon.tag-deepClean{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.status-card-tags{margin:0}.notes-list{display:flex;flex-direction:column;gap:1rem}.notes-loading{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.9rem}.loading-spinner-small{width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-secondary);border-radius:50%;animation:spin 1s linear infinite}.notes-header{display:flex;justify-content:space-between;align-items:center}.notes-header h4{font-size:1rem;font-weight:600;color:var(--color-text-dark);margin:0}.notes-error{background-color:#fee2e2;color:#dc2626;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;display:flex;justify-content:space-between;align-items:center}.notes-error button{padding:0;min-width:24px}.notes-empty{text-align:center;padding:1rem;color:#666;font-size:.9rem}.notes-empty p{margin-bottom:.5rem}.notes-items{display:flex;flex-direction:column;gap:.75rem}.note-card{background:#f8fafc;border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem}.note-content{margin-bottom:.5rem}.note-content p{margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.5}.note-metadata{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#666}.note-timestamp{font-style:italic}.note-edited{color:#999}.note-actions{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.note-actions button{font-size:.8rem}.delete-confirm{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#dc2626}.note-form{display:flex;flex-direction:column;gap:.5rem}.note-edit-container{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:.75rem}.note-edit-container .edit-label{font-size:.8rem;color:#856404;margin-bottom:.5rem;font-weight:500}.note-input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:6px;font-family:inherit;font-size:.9rem;resize:vertical;min-height:80px;transition:border-color .2s ease}.note-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 2px #4472c426}.note-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.note-form-actions{display:flex;justify-content:space-between;align-items:center}.note-form-hint{font-size:.75rem;color:#999}.note-form-buttons{display:flex;gap:.5rem}@media (max-width: 480px){.notes-header{flex-direction:column;align-items:flex-start;gap:.5rem}.note-form-actions{flex-direction:column;gap:.5rem;align-items:flex-start}.note-form-hint{order:1}.note-form-buttons{order:0;width:100%;justify-content:flex-end}}.sharing-page{max-width:1000px;margin:0 auto}.sharing-page .page-description{color:#6b7280;margin-bottom:2rem}.sharing-section{background:var(--color-card);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000f}.sharing-section h2{font-size:1.25rem;color:var(--color-primary);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.sharing-section h2 svg{color:var(--color-secondary)}.sharing-section .section-description{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.section-header-with-action{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.section-header-with-action>div:first-child{flex:1}.section-header-with-action h2{margin-bottom:.25rem}.section-header-with-action .section-description{margin-bottom:0}@media (max-width: 600px){.section-header-with-action{flex-direction:column;align-items:stretch}.section-header-with-action .btn{align-self:flex-start}}.success-message,.error-message,.warning-message{position:fixed;top:1.5rem;right:1.5rem;z-index:1000;display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-radius:10px;box-shadow:0 8px 24px #00000026;max-width:400px;animation:slideInToast .3s ease-out}@keyframes slideInToast{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.success-message{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.success-message:before{content:"✓";font-size:1.25rem;font-weight:700}.error-message{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.error-message:before{content:"⚠";font-size:1.25rem}.warning-message{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.warning-message:before{content:"⚡";font-size:1.25rem}.close-success-button,.close-error-button,.close-warning-button{background:#fff3;border:none;color:#fff;font-size:1rem;cursor:pointer;padding:.2rem .5rem;border-radius:4px;line-height:1;margin-left:auto;transition:background-color .15s ease}.close-success-button:hover,.close-error-button:hover,.close-warning-button:hover{background:#ffffff4d}.request-cards{display:flex;flex-direction:column;gap:1rem}.share-request-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--color-background);border-radius:8px;border-left:4px solid var(--color-secondary)}.share-request-card.incoming{border-left-color:var(--color-success)}.share-request-card.outgoing{border-left-color:var(--color-warning)}.request-info h3{font-size:1rem;color:var(--color-text-dark);margin-bottom:.25rem}.request-meta{font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.request-date{font-size:.8rem;color:#9ca3af}.request-status{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;margin-top:.5rem}.request-status.pending{background:#fef3c7;color:#92400e}.request-actions{display:flex;gap:.5rem}.share-form-container{display:flex;flex-direction:column;gap:1.5rem}.select-all-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.selection-count{font-size:.85rem;color:#6b7280}.apartment-checkbox-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;max-height:300px;overflow-y:auto;padding:.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background)}.apartment-checkbox-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--color-card);border-radius:6px;cursor:pointer;transition:background-color .15s ease;min-width:0;overflow:hidden}.apartment-checkbox-item:hover{background:#f3f4f6}.apartment-checkbox-item input[type=checkbox]{width:18px;height:18px;margin-top:.1rem;accent-color:var(--color-primary)}.apartment-checkbox-info{display:flex;flex-direction:column;min-width:0;overflow:hidden}.apartment-checkbox-info .apartment-name{font-weight:500;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apartment-checkbox-info .apartment-address{font-size:.8rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-search-group{position:relative}.user-search-input-container{position:relative;display:flex;align-items:center}.user-search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--color-border);border-radius:8px;font-size:1rem}.user-search-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #4472c426}.clear-user-btn{position:absolute;right:.75rem;background:none;border:none;color:#9ca3af;font-size:1rem;cursor:pointer;padding:.25rem}.clear-user-btn:hover{color:#6b7280}.search-loading{position:absolute;right:.75rem;font-size:.85rem;color:#6b7280}.search-hint{font-size:.8rem;color:#9ca3af;margin-top:.5rem}.no-search-results{padding:.75rem;background:#fefce8;border:1px solid #fef08a;border-radius:8px;margin-top:.5rem}.can-share-by-email{color:#15803d;font-size:.9rem;margin:0}.can-share-by-email strong{color:#166534}.invalid-email-hint{color:#b45309;font-size:.9rem;margin:0}.user-search-results{position:absolute;top:100%;left:0;right:0;background:var(--color-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;max-height:200px;overflow-y:auto;margin-top:.25rem}.user-search-result-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background-color .15s ease}.user-search-result-item:hover{background:var(--color-background)}.user-avatar-small{width:36px;height:36px;border-radius:50%;background:var(--color-secondary);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.user-result-info{display:flex;flex-direction:column}.user-result-name{font-weight:500;color:var(--color-text-dark)}.user-result-email{font-size:.8rem;color:#6b7280}.selected-user-display{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#eff6ff;border:1px solid var(--color-secondary);border-radius:8px;margin-top:.5rem}.selected-badge{margin-left:auto;padding:.2rem .5rem;background:var(--color-secondary);color:var(--color-text-light);border-radius:4px;font-size:.75rem;font-weight:600}.share-prices-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;-webkit-user-select:none;user-select:none}.share-prices-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.share-btn{align-self:flex-start;padding:.75rem 2rem}.sharing-arrangements-list{display:flex;flex-direction:column;gap:.75rem}.sharing-arrangement-card{background:var(--color-background);border-radius:8px;overflow:hidden}.arrangement-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;cursor:pointer;transition:background-color .15s ease}.arrangement-header:hover{background:#e5e7eb}.arrangement-info h3{font-size:1rem;color:var(--color-text-dark);margin-bottom:.2rem}.arrangement-address{font-size:.85rem;color:#6b7280}.expand-icon{font-size:.8rem;color:#6b7280;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.arrangement-details{padding:0 1rem 1rem;border-top:1px solid var(--color-border)}.loading-inline{padding:1rem 0;color:#6b7280;font-style:italic}.no-permissions{padding:1rem 0;color:#9ca3af;font-style:italic}.permissions-list{display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem}.permission-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--color-card);border-radius:6px}.permission-user{display:flex;align-items:center;gap:.75rem}.permission-user-info{display:flex;flex-direction:column}.permission-user-name{font-weight:500;color:var(--color-text-dark)}.permission-user-email{font-size:.8rem;color:#6b7280}.permission-meta{display:flex;align-items:center;gap:1rem}.permission-date{font-size:.8rem;color:#9ca3af}@media (max-width: 768px){.share-request-card{flex-direction:column;align-items:flex-start;gap:1rem}.request-actions{width:100%;justify-content:flex-end}.apartment-checkbox-list{grid-template-columns:1fr;max-height:250px}.permission-item{flex-direction:column;align-items:flex-start;gap:.75rem}.permission-meta{width:100%;justify-content:space-between}}@media (max-width: 480px){.sharing-section{padding:1rem}.select-all-row{flex-direction:column;align-items:flex-start;gap:.5rem}.selected-user-display{flex-wrap:wrap}.selected-badge{margin-left:0;margin-top:.5rem}}.reports-page{max-width:1200px;margin:0 auto}.reports-filters{background:var(--color-card);border-radius:12px;border:1px solid var(--color-border);padding:1.5rem;margin-bottom:2rem}.filter-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.reports-filters .filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px;flex:1}.reports-filters .filter-group label{font-size:.85rem;font-weight:500;color:#374151}.date-input{padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.9rem;background:var(--color-background)}.date-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15)}.filter-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.quick-ranges{display:flex;gap:.5rem;flex-wrap:wrap}.quick-ranges .btn{font-size:.8rem}.export-buttons{display:flex;gap:.5rem;margin-left:.5rem}.btn-export{display:flex;align-items:center;gap:.35rem;padding:.6rem 1rem;font-size:.9rem;font-weight:500;border-radius:6px;transition:all .2s ease}.btn-export:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.btn-export:disabled{opacity:.6;cursor:not-allowed}.reports-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;color:#dc2626;margin-bottom:1.5rem}.report-results{display:flex;flex-direction:column;gap:2rem}.report-section{background:var(--color-card);border-radius:12px;border:1px solid var(--color-border);padding:1.5rem}.report-section .section-title{font-size:1.25rem;font-weight:600;color:var(--color-text-dark);margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.report-section .section-title svg{color:var(--color-secondary)}.report-section .section-subtitle{color:#6b7280;font-size:.9rem;margin-bottom:1.25rem}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:10px;padding:1.25rem;text-align:center;border:1px solid var(--color-border)}.summary-card.completed{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#a7f3d0}.summary-card.pending{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a}.summary-card.in-progress{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.summary-card.cancelled{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fca5a5}.summary-card.not-scheduled{background:linear-gradient(135deg,#f5f5f5,#e5e5e5);border-color:#d4d4d4}.summary-value{font-size:2rem;font-weight:700;color:var(--color-text-dark);line-height:1.2}.summary-label{font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.overall-completion{background:#f8fafc;border-radius:8px;padding:1rem 1.25rem;border:1px solid var(--color-border)}.completion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-weight:500}.completion-percentage{font-size:1.25rem;font-weight:700;color:var(--color-primary)}.progress-bar-container{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}.progress-bar{height:100%;border-radius:6px;transition:width .5s ease-out}.progress-bar.completion-high{background:linear-gradient(90deg,#22c55e,#16a34a)}.progress-bar.completion-medium{background:linear-gradient(90deg,#eab308,#ca8a04)}.progress-bar.completion-low{background:linear-gradient(90deg,#ef4444,#dc2626)}.apartment-report-table{overflow-x:auto}.table-header,.table-row{display:grid;grid-template-columns:2fr .7fr .7fr .7fr .7fr 1.1fr 1fr;gap:.5rem;padding:.75rem 1rem;align-items:center}.table-header{background:#f1f5f9;border-radius:8px 8px 0 0;font-weight:600;font-size:.8rem;color:#374151;text-transform:uppercase;letter-spacing:.05em}.table-row{border-bottom:1px solid var(--color-border)}.table-row:last-child{border-bottom:none}.table-row:hover{background:#f8fafc}.col-apartment{min-width:0}.apartment-name{font-weight:500;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apartment-address{font-size:.8rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-stats{text-align:center;font-weight:500}.completed-text{color:#16a34a}.pending-text{color:#ca8a04}.not-scheduled-text{color:#6b7280}.col-completion{display:flex;align-items:center;gap:.5rem}.mini-progress-container{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.mini-progress{height:100%;border-radius:3px}.mini-progress.completion-high{background:#22c55e}.mini-progress.completion-medium{background:#eab308}.mini-progress.completion-low{background:#ef4444}.completion-text{font-weight:600;font-size:.85rem;min-width:40px;text-align:right}.col-dates{font-size:.85rem;color:#6b7280}.col-dates .no-data{font-style:italic;color:#9ca3af}.col-cost{text-align:right;min-width:90px}.cost-cell{display:flex;flex-direction:column;align-items:flex-end}.cost-total{font-weight:600;color:var(--color-text-dark)}.cost-per-unit{font-size:.75rem;color:#9ca3af}.col-cost .no-data{font-style:italic;color:#9ca3af}.cost-summary{display:flex;gap:2rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:8px;margin-bottom:1rem;flex-wrap:wrap}.cost-item{display:flex;align-items:center;gap:.5rem}.cost-label{font-size:.9rem;color:#374151}.cost-value{font-size:1.25rem;font-weight:700;color:#16a34a}.cost-item.completed .cost-value{color:#059669}.cost-currency-group{display:flex;align-items:center;gap:1.5rem;padding:.5rem 1rem;background:#ffffff80;border-radius:6px}.cost-currency-group:only-child{background:transparent;padding:0}.currency-label{font-weight:700;font-size:.85rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;min-width:40px}.table-footer{display:flex;justify-content:flex-end;align-items:center;gap:1rem;padding:1rem;background:#f1f5f9;border-radius:0 0 8px 8px;border-top:2px solid var(--color-border)}.footer-label{font-weight:500;color:#374151}.footer-value{font-size:1.25rem;font-weight:700;color:#16a34a}.cleaner-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.cleaner-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid var(--color-border);border-radius:12px;padding:1.25rem}.cleaner-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.cleaner-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600}.cleaner-info{flex:1;min-width:0}.cleaner-name{font-weight:600;color:var(--color-text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cleaner-email{font-size:.85rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cleaner-stats{display:flex;gap:1rem;margin-bottom:1rem}.cleaner-stat{flex:1;text-align:center;padding:.5rem;background:#fff;border-radius:8px;border:1px solid var(--color-border)}.cleaner-stat.completed{background:#ecfdf5;border-color:#a7f3d0}.cleaner-stat .stat-value{display:block;font-size:1.25rem;font-weight:700;color:var(--color-text-dark)}.cleaner-stat .stat-label{display:block;font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.cleaner-apartments{font-size:.85rem;margin-bottom:.75rem;padding:.5rem 0;border-top:1px solid var(--color-border)}.apartments-label{font-weight:500;color:#374151;margin-right:.5rem}.apartments-list{color:#6b7280}.cleaner-dates{font-size:.8rem;color:#9ca3af}@media (max-width: 768px){.filter-row{flex-direction:column}.reports-filters .filter-group{min-width:100%}.filter-actions{flex-direction:column;align-items:stretch}.quick-ranges{justify-content:center}.export-buttons{justify-content:center;margin-left:0;margin-top:.5rem}.summary-cards{grid-template-columns:repeat(2,1fr)}.table-header,.table-row{grid-template-columns:1.5fr .5fr .5fr .5fr .5fr 1fr}.col-dates{display:none}.cleaner-cards{grid-template-columns:1fr}}@media (max-width: 480px){.summary-cards{grid-template-columns:1fr 1fr}.table-header,.table-row{grid-template-columns:1fr .5fr .5fr 1fr;font-size:.85rem;padding:.5rem .75rem}.col-stats:nth-child(4){display:none}.cleaner-stats{flex-wrap:wrap}.cleaner-stat{flex:1 0 45%}}.account-page{padding:0;max-width:1000px;margin:0 auto}.account-page .page-header{margin-bottom:2rem;text-align:center}.account-page .page-header h1{font-size:1.75rem;font-weight:700;color:var(--color-text-dark);margin-bottom:.25rem}.account-page .page-subtitle{color:#6b7280;font-size:.95rem}.account-content{display:flex;flex-direction:column;gap:1.5rem}.account-card{background:var(--color-card);border-radius:16px;box-shadow:0 2px 12px #0000000f;border:1px solid var(--color-border);overflow:hidden}.account-card .card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.account-card .card-header h3{font-size:1.1rem;font-weight:600;color:var(--color-text-dark);margin:0}.account-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.account-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.account-loading p{color:#6b7280;font-size:.95rem}.account-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;background:var(--color-card);border-radius:16px;border:1px solid #fecaca}.account-error .error-icon{font-size:3rem}.account-error p{color:#dc2626;font-size:1rem;text-align:center}.profile-card{padding:0}.profile-header{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff}.profile-avatar-section{flex-shrink:0}.profile-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0003}.profile-avatar-fallback{width:80px;height:80px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;color:#fff;border:4px solid rgba(255,255,255,.3);text-shadow:0 2px 4px rgba(0,0,0,.2)}.profile-info{flex:1;min-width:0}.profile-name{font-size:1.5rem;font-weight:700;margin-bottom:.25rem;text-shadow:0 1px 2px rgba(0,0,0,.1)}.profile-email{font-size:.95rem;opacity:.9;margin-bottom:.5rem}.profile-last-login{font-size:.85rem;opacity:.75}.profile-details{padding:1.5rem 2rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:500;color:#6b7280;font-size:.9rem}.detail-value{font-weight:500;color:var(--color-text-dark);font-size:.9rem}.account-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.stat-card{background:var(--color-card);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;border:1px solid var(--color-border);box-shadow:0 2px 8px #0000000a;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.stat-icon{font-size:2rem;flex-shrink:0}.stat-content{flex:1;min-width:0}.stat-card .stat-value{display:block;font-size:1.75rem;font-weight:700;color:var(--color-text-dark);line-height:1.2}.stat-card .stat-label{display:block;font-size:.8rem;color:#6b7280;font-weight:500}.subscription-content{padding:1.5rem 2rem}.subscription-plan{margin-bottom:1.5rem}.plan-badge{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);color:#fff;border-radius:20px;font-weight:600;font-size:.9rem;margin-bottom:.75rem}.plan-description{color:#6b7280;font-size:.95rem;line-height:1.5}.subscription-details{margin-bottom:1.5rem;padding:1rem;background:#f8fafc;border-radius:12px}.subscription-details .detail-row{padding:.5rem 0}.status-active{color:var(--color-success);font-weight:600}.status-cancelled{color:#ef4444;font-weight:600}.status-expired{color:#6b7280;font-weight:600}.subscription-actions{text-align:center;padding-top:1rem;border-top:1px solid var(--color-border)}.subscription-actions .btn{margin-bottom:.75rem}.coming-soon-text{font-size:.85rem;color:#9ca3af;font-style:italic}.actions-card .card-header{background:transparent;border-bottom:none;padding-bottom:0}.quick-actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem 1.5rem 1.5rem}.quick-action{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem;background:#f8fafc;border-radius:12px;text-decoration:none;color:var(--color-text-dark);border:1px solid transparent;transition:all .2s ease}.quick-action:hover{background:#fff;border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #152a5e1a}.quick-action .action-icon{font-size:1.75rem}.quick-action .action-label{font-size:.85rem;font-weight:500;text-align:center}@media (max-width: 900px){.account-stats-grid,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.profile-header{flex-direction:column;text-align:center;padding:1.5rem}.profile-avatar,.profile-avatar-fallback{width:100px;height:100px;font-size:2rem}.profile-name{font-size:1.25rem}.profile-details{padding:1rem 1.5rem}.detail-row{flex-direction:column;align-items:flex-start;gap:.25rem;padding:.75rem 0}.account-stats-grid{grid-template-columns:1fr 1fr}.stat-card{flex-direction:column;text-align:center;padding:1rem;gap:.5rem}.stat-card .stat-value{font-size:1.5rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;padding:.75rem 1rem 1rem}.quick-action{padding:1rem}.quick-action .action-icon{font-size:1.5rem}.quick-action .action-label{font-size:.8rem}.subscription-content{padding:1rem 1.25rem}}.view-mode-toggle{display:flex;background:var(--color-background);border-radius:8px;padding:4px;margin-left:1rem;border:1px solid var(--color-border)}.toggle-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.toggle-btn:hover:not(:disabled){color:var(--color-primary);background:#4472c41a}.toggle-btn.active{background:var(--color-primary);color:var(--color-text-light);box-shadow:0 2px 4px #152a5e33}.toggle-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-btn svg{flex-shrink:0}.daily-view{background:var(--color-card);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.daily-view-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:var(--color-text-light);padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.daily-view-header.all-complete{background:linear-gradient(135deg,#059669,#10b981)}.daily-view-header-actions{display:flex;gap:.75rem;align-items:center}.daily-view-date{display:flex;align-items:center;gap:1rem}.daily-view-date svg{opacity:.8}.date-info h2{font-size:1.5rem;font-weight:700;margin:0}.date-info .date-full{font-size:.9rem;opacity:.85;margin:.25rem 0 0}.all-complete-badge{display:flex;align-items:center;gap:.5rem;background:#fff3;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.daily-view-summary{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.summary-item{display:flex;flex-direction:column;align-items:center;background:#00000040;padding:.75rem 1.25rem;border-radius:10px;min-width:90px;border:2px solid rgba(255,255,255,.3)}.summary-item .summary-count{font-size:2rem;font-weight:800;line-height:1;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.summary-item .summary-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#fff;font-weight:600;margin-top:.25rem;text-shadow:0 1px 2px rgba(0,0,0,.2)}.summary-item.complete{background:#10b98166;border-color:#10b98199}.summary-item.in-progress{background:#3b82f666;border-color:#3b82f699}.summary-item.pending{background:#f59e0b66;border-color:#f59e0b99}.summary-item.cancelled{background:#dc26264d;border-color:#dc262699}.daily-view-content{padding:1.5rem}.daily-view-events{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.daily-view-empty{text-align:center;padding:4rem 2rem;color:#6b7280;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.daily-view-empty svg{color:#9ca3af}.daily-view-empty h3{color:var(--color-primary);font-size:1.25rem;margin:0}.daily-view-empty p{color:#6b7280;font-size:.95rem;margin:0;line-height:1.6}.daily-view-empty .btn{margin-top:.5rem}.daily-view .cleaning-status-card{padding:1rem 1.25rem;border-radius:12px;box-shadow:0 3px 10px #0000001a;border:3px solid var(--color-secondary);background:var(--color-card);height:100%}.daily-view .cleaning-status-card:hover{border-color:var(--color-primary);box-shadow:0 6px 20px #152a5e26}.daily-view .status-card-header{margin-bottom:.75rem;padding-bottom:.5rem}.daily-view .status-card-header h3{font-size:1rem;line-height:1.3}.daily-view .cleaning-status-badge{font-size:.75rem;padding:.35rem .75rem}@media (max-width: 768px){.view-mode-toggle{margin-left:0;margin-top:.75rem}.toggle-btn span{display:none}.toggle-btn{padding:.5rem .75rem}.daily-view-header{flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem}.daily-view-date{flex-wrap:wrap}.date-info h2{font-size:1.25rem}.daily-view-summary{width:100%;justify-content:space-between}.summary-item{flex:1;min-width:60px;padding:.5rem .75rem}.daily-view-content{padding:1rem}.daily-view-events{grid-template-columns:repeat(2,1fr);gap:1rem}.daily-view .cleaning-status-card{padding:.75rem 1rem}.daily-view .status-card-header h3{font-size:.9rem}.summary-item{min-width:70px;padding:.5rem .75rem}.summary-item .summary-count{font-size:1.5rem}.summary-item .summary-label{font-size:.65rem}}@media (max-width: 480px){.view-mode-toggle{order:3;width:100%;justify-content:center}.toggle-btn span{display:inline}.toggle-btn{flex:1;justify-content:center}.daily-view-events{grid-template-columns:1fr}.daily-view .cleaning-status-card{border-width:2px}}.guide-page{max-width:1000px;margin:0 auto;padding:0}.guide-header{text-align:center;margin-bottom:3rem;padding:2rem 1rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;border-radius:16px;box-shadow:0 4px 20px #152a5e26}.guide-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .75rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.guide-subtitle{font-size:1.1rem;opacity:.9;margin:0}.guide-sections{display:flex;flex-direction:column;gap:1rem}.guide-section{background:var(--color-card);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 2px 8px #0000000d;overflow:hidden;transition:all .3s ease}.guide-section.expanded{box-shadow:0 4px 16px #0000001a}.section-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .2s ease}.section-header:hover{background:var(--color-background)}.section-title-group{flex:1;min-width:0}.section-title-group h2{font-size:1.25rem;font-weight:600;color:var(--color-text-dark);margin:0 0 .5rem}.section-description{font-size:.95rem;color:#6b7280;margin:0}.expand-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-background);border-radius:50%;font-size:1.5rem;font-weight:300;color:var(--color-primary);margin-left:1rem;transition:all .2s ease}.guide-section.expanded .expand-icon{background:var(--color-primary);color:#fff;transform:rotate(90deg)}.section-content{padding:0 1.5rem 1.5rem;border-top:1px solid var(--color-border);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.video-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px dashed var(--color-border);border-radius:12px;padding:3rem 2rem;margin-bottom:1.5rem;color:#6b7280}.video-placeholder svg{color:var(--color-primary);margin-bottom:1rem;opacity:.6}.video-placeholder p{font-size:.95rem;font-weight:500;margin:0}.slideshow-wrapper{margin-bottom:1.5rem}.image-slideshow{position:relative;width:100%;background:var(--color-card);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.slideshow-container{position:relative;width:100%;display:flex;align-items:center;justify-content:center;background:#f8fafc}.slideshow-image-wrapper{width:100%;height:500px;display:flex;align-items:center;justify-content:center;overflow:hidden}.slideshow-image{width:100%;height:100%;object-fit:contain;display:block}.slideshow-nav{position:absolute;top:50%;transform:translateY(-50%);background:#152a5ecc;color:#fff;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;box-shadow:0 2px 8px #0003}.slideshow-nav:hover{background:#152a5e;transform:translateY(-50%) scale(1.1)}.slideshow-nav:active{transform:translateY(-50%) scale(.95)}.slideshow-nav-prev{left:1rem}.slideshow-nav-next{right:1rem}.slideshow-step-section{background:var(--color-primary);color:#fff;padding:2rem;text-align:left;position:relative;min-height:200px;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.step-number-badge{position:absolute;top:2rem;left:2rem;background:#fff3;color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0}.step-heading{font-size:1.5rem;font-weight:600;color:#fff;margin:0 0 .75rem;padding-top:3rem}.step-description{font-size:1rem;color:#ffffffe6;line-height:1.6;margin:0 0 1.5rem;max-width:600px}.step-action-button{background:#fff;color:var(--color-primary);border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #00000026}.step-action-button:hover{background:#f0f0f0;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.step-action-button:active{transform:translateY(0)}.slideshow-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem 2rem;background:var(--color-background);border-bottom-left-radius:12px;border-bottom-right-radius:12px}.slideshow-indicators{display:flex;justify-content:center;gap:.5rem;align-items:center}.slideshow-indicator{width:10px;height:10px;border-radius:50%;border:2px solid #cbd5e1;background:transparent;cursor:pointer;transition:all .2s ease;padding:0}.slideshow-indicator:hover{border-color:#94a3b8;transform:scale(1.2)}.slideshow-indicator.active{background:var(--color-primary);border-color:var(--color-primary);width:24px;border-radius:5px}.slideshow-counter{color:var(--color-text-dark);font-size:.875rem;font-weight:500}.steps-list h3{font-size:1rem;font-weight:600;color:var(--color-text-dark);margin:0 0 1rem}.steps-list ol{margin:0;padding-left:1.5rem;list-style:decimal}.steps-list li{font-size:.95rem;line-height:1.7;color:var(--color-text);margin-bottom:.75rem;padding-left:.5rem}.steps-list li:last-child{margin-bottom:0}.guide-footer{margin-top:3rem;padding:2rem;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:12px;border:1px solid #86efac}.help-box h3{font-size:1.25rem;font-weight:600;color:#166534;margin:0 0 .75rem}.help-box p{font-size:.95rem;color:#15803d;line-height:1.6;margin:0}@media (max-width: 768px){.guide-header{padding:1.5rem 1rem;margin-bottom:2rem}.guide-header h1{font-size:2rem}.guide-subtitle{font-size:1rem}.section-header{padding:1.25rem 1rem}.section-title-group h2{font-size:1.1rem}.section-description{font-size:.9rem}.expand-icon{width:32px;height:32px;font-size:1.25rem}.section-content{padding:0 1rem 1.25rem}.video-placeholder{padding:2rem 1rem}.slideshow-image-wrapper{height:350px}.slideshow-image{height:100%}.slideshow-nav{width:36px;height:36px}.slideshow-nav-prev{left:.5rem}.slideshow-nav-next{right:.5rem}.slideshow-step-section{padding:1.5rem 1rem;min-height:180px}.slideshow-pagination{padding:.75rem 1rem}.step-number-badge{top:1.5rem;left:1rem;font-size:.75rem;padding:.375rem .75rem}.step-heading{font-size:1.25rem;padding-top:2.5rem}.step-description{font-size:.9rem}.step-action-button{padding:.625rem 1.5rem;font-size:.9rem}.slideshow-pagination{padding:.75rem 1rem;gap:.75rem}.slideshow-counter{font-size:.75rem}.steps-list li{font-size:.9rem}.guide-footer{padding:1.5rem;margin-top:2rem}.help-box h3{font-size:1.1rem}.help-box p{font-size:.9rem}}@media (max-width: 480px){.guide-header h1{font-size:1.75rem}.section-title-group h2{font-size:1rem}.expand-icon{margin-left:.5rem}}.terms-checkbox-container{margin:1.5rem 0 2rem!important;padding:.75rem 1rem;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.terms-checkbox-label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.terms-checkbox{margin-top:.15rem;width:16px;height:16px;cursor:pointer;flex-shrink:0}.terms-text{font-size:.85rem;color:#4a5568;line-height:1.4}.terms-link{color:#667eea;text-decoration:underline;font-weight:600;transition:color .2s ease}.terms-link:hover{color:#5568d3}.terms-link:visited{color:#764ba2}.landing-page{min-height:100vh;background:linear-gradient(180deg,var(--color-background) 0%,#e8ecf2 50%,#dce2eb 100%);font-family:Segoe UI,system-ui,-apple-system,sans-serif}.landing-header{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--color-primary);color:var(--color-text-light);box-shadow:0 2px 8px #00000026}.landing-header-inner{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between}.landing-logo img{height:36px;width:auto}.landing-nav{display:flex;gap:.75rem}.landing-nav-btn{padding:.5rem 1.25rem;border:none;background:transparent;color:#ffffffe6;font-size:.95rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s ease}.landing-nav-btn:hover{background:#ffffff26;color:#fff}.landing-nav-btn.primary{background:#fff;color:var(--color-primary)}.landing-nav-btn.primary:hover{background:#fffffff2;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.landing-hero{padding:8rem 2rem 6rem;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;background:linear-gradient(135deg,#152a5e0a,#4472c414)}@media (max-width: 900px){.landing-hero{grid-template-columns:1fr;text-align:center;padding-top:6rem}}.landing-hero-title{font-size:clamp(2rem,4vw,3.25rem);font-weight:700;line-height:1.15;color:var(--color-text-dark);letter-spacing:-.03em;margin-bottom:1.25rem}.landing-hero-title em{font-style:normal;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-subtitle{font-size:1.2rem;color:#6b7280;line-height:1.6;margin-bottom:2rem;max-width:480px}@media (max-width: 900px){.landing-hero-subtitle{margin-left:auto;margin-right:auto}}.landing-hero-cta{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}@media (max-width: 900px){.landing-hero-cta{align-items:center}}.landing-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.landing-btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;box-shadow:0 4px 14px #152a5e59}.landing-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #152a5e73}.landing-btn-lg{padding:1rem 2rem;font-size:1.1rem}.landing-hero-note{font-size:.875rem;color:#6b7280}.landing-hero-visual{display:flex;justify-content:center;align-items:center}.landing-hero-card{background:var(--color-card);border-radius:16px;box-shadow:0 25px 50px -12px #152a5e33,0 0 0 1px var(--color-border);overflow:hidden;max-width:420px}.landing-hero-card-header{padding:1rem 1.25rem;background:var(--color-background);border-bottom:1px solid var(--color-border);display:flex;gap:6px}.landing-hero-card-dot{width:12px;height:12px;border-radius:50%;background:var(--color-border)}.landing-hero-card-dot:first-child{background:#e2e8f0}.landing-hero-card-dot:nth-child(2){background:var(--color-secondary)}.landing-hero-card-dot:nth-child(3){background:var(--color-primary)}.landing-hero-card-content{padding:1.5rem}.landing-hero-calendar-preview{font-size:.8rem}.landing-calendar-header{font-weight:600;color:var(--color-primary);margin-bottom:1rem;text-align:center}.landing-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.landing-calendar-day-label{color:#94a3b8;font-weight:500;text-align:center;padding:4px 0}.landing-calendar-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;color:#64748b;font-size:.75rem}.landing-calendar-cell.has-event{background:linear-gradient(135deg,#4472c433,#152a5e26);color:var(--color-primary);font-weight:600}.landing-section{padding:5rem 2rem}.landing-container{max-width:1200px;margin:0 auto}.landing-section-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--color-primary);text-align:center;margin-bottom:.75rem;letter-spacing:-.02em}.landing-section-subtitle{font-size:1.1rem;color:#6b7280;text-align:center;margin-bottom:3rem;max-width:560px;margin-left:auto;margin-right:auto}.landing-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.landing-feature-card{background:var(--color-card);padding:2rem;border-radius:16px;box-shadow:0 1px 3px #00000014;border:1px solid var(--color-border);transition:all .25s ease}.landing-feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #152a5e1f;border-color:var(--color-secondary)}.landing-feature-icon{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,#4472c426,#152a5e1a);color:var(--color-primary);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.landing-feature-card h3{font-size:1.2rem;font-weight:600;color:var(--color-primary);margin-bottom:.5rem}.landing-feature-card p{font-size:.95rem;color:#6b7280;line-height:1.6}.landing-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.landing-step{display:flex;gap:1.5rem;align-items:flex-start}.landing-step-num{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;font-weight:700;font-size:1.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.landing-step-content h3{font-size:1.15rem;font-weight:600;color:var(--color-primary);margin-bottom:.35rem}.landing-step-content p{font-size:.95rem;color:#6b7280;line-height:1.6}.landing-benefits-list{list-style:none;max-width:480px;margin:0 auto;padding:0}.landing-benefits-list li{display:flex;align-items:center;gap:1rem;padding:.875rem 0;font-size:1.1rem;color:var(--color-text-dark);border-bottom:1px solid var(--color-border)}.landing-benefits-list li:last-child{border-bottom:none}.landing-benefit-icon{color:var(--color-primary);flex-shrink:0}.landing-cta{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;text-align:center}.landing-cta-title{font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:700;margin-bottom:.5rem}.landing-cta-subtitle{font-size:1.1rem;color:#ffffffe6;margin-bottom:2rem}.landing-cta .landing-btn-primary{background:#fff;color:var(--color-primary);box-shadow:0 4px 14px #0003}.landing-cta .landing-btn-primary:hover{background:#fffffff2;box-shadow:0 6px 20px #00000040}.landing-footer{padding:3rem 2rem;background:var(--color-primary);color:#ffffffe6}.landing-footer-inner{max-width:1200px;margin:0 auto;text-align:center}.landing-footer-logo img{height:32px;opacity:.9;margin-bottom:1rem}.landing-footer-links{margin-bottom:1rem}.landing-footer-links a{color:#ffffffd9;text-decoration:none;font-size:.9rem}.landing-footer-links a:hover{color:#fff}.landing-footer-copy{font-size:.85rem;color:#ffffffbf}
