@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-primary: #10b981;--accent-secondary: #059669;--accent-glow: rgba(16, 185, 129, .15);--border-color: rgba(255, 255, 255, .05);--card-shadow: 0 10px 25px -5px rgba(0, 0, 0, .3), 0 8px 10px -6px rgba(0, 0, 0, .3);--font-main: "Inter", system-ui, -apple-system, sans-serif;--font-heading: "Outfit", sans-serif;--transition-fast: .2s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);font-family:var(--font-main);line-height:1.6;font-weight:400;color-scheme:dark;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background-color:var(--bg-primary);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;color:var(--text-primary);letter-spacing:-.02em}a{color:var(--accent-primary);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--accent-secondary)}button{font-family:var(--font-main);cursor:pointer;border:none;border-radius:8px;transition:var(--transition-normal)}.glass{background:#1e293bb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.notifications-container{position:relative}.notifications-btn{position:relative;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease}.notifications-btn:hover{background:#ffffff1a;color:var(--text-primary)}.notifications-badge{position:absolute;top:4px;right:4px;background:#3b82f6;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;line-height:1}.notifications-panel{position:absolute;top:100%;right:0;width:420px;max-height:600px;background:#1f2937;border:1px solid #374151;border-radius:12px;box-shadow:0 10px 40px #0000004d;z-index:1000;overflow:hidden;margin-top:8px}.notifications-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #374151}.notifications-header h3{color:#fff;font-size:18px;font-weight:600;margin:0}.notifications-header-actions{display:flex;gap:8px;align-items:center}.mark-all-read-btn,.filter-btn,.settings-btn,.close-panel-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:#9ca3af;cursor:pointer;padding:6px 10px;border-radius:6px;font-size:13px;transition:all .2s ease}.mark-all-read-btn:hover,.filter-btn:hover,.settings-btn:hover,.close-panel-btn:hover{background:#ffffff1a;color:#fff}.notifications-filters{padding:12px 20px;border-bottom:1px solid #374151}.filter-tabs{display:flex;gap:4px}.filter-tab{background:none;border:none;color:#9ca3af;cursor:pointer;padding:8px 16px;border-radius:6px;font-size:13px;transition:all .2s ease}.filter-tab.active{background:#3b82f6;color:#fff}.filter-tab:hover:not(.active){background:#ffffff1a;color:#fff}.notifications-search{position:relative;padding:12px 20px;border-bottom:1px solid #374151}.notifications-search .search-icon{position:absolute;left:32px;top:50%;transform:translateY(-50%);color:#6b7280}.notifications-search input{width:100%;background:#111827;border:1px solid #374151;border-radius:8px;padding:8px 12px 8px 36px;color:#fff;font-size:14px;outline:none;transition:border-color .2s ease}.notifications-search input:focus{border-color:#3b82f6}.notifications-search input::placeholder{color:#6b7280}.notifications-list{max-height:400px;overflow-y:auto}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:#1f2937}.notifications-list::-webkit-scrollbar-thumb{background:#4b5563;border-radius:3px}.notifications-list::-webkit-scrollbar-thumb:hover{background:#6b7280}.notification-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #374151;cursor:pointer;transition:background-color .2s ease}.notification-item:hover{background:#ffffff0d}.notification-item.unread{position:relative}.unread-indicator{position:absolute;top:12px;right:12px;width:20px;height:20px;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:6px;display:flex;align-items:center;justify-content:center;color:#3b82f6;z-index:1;transition:all .2s ease}.notification-item:hover .unread-indicator{background:#3b82f640;border-color:#3b82f680;color:#2563eb}.notification-content{display:flex;gap:12px;flex:1;min-width:0}.notification-icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;margin-right:12px;border:1px solid rgba(255,255,255,.1)}.icon-success{color:#22c55e;border-color:#22c55e4d}.icon-warning{color:#f97316;border-color:#f973164d}.icon-error{color:#ef4444;border-color:#ef44444d}.icon-info{color:#3b82f6;border-color:#3b82f64d}.notification-text{flex:1;min-width:0}.notification-text h4{color:#fff;font-size:14px;font-weight:600;margin:0 0 4px;line-height:1.4}.notification-text p{color:#9ca3af;font-size:13px;margin:0 0 8px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-item.expanded{background:#ffffff14;border-left:3px solid #3b82f6}.notification-item.expanded .notification-text p.expanded{white-space:normal;overflow:visible;text-overflow:unset;line-height:1.6;max-height:none}.notification-item.expanded .notification-text p.collapsed{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-details{margin-top:12px;padding-top:12px;border-top:1px solid #374151}.notification-meta{display:flex;flex-direction:column;gap:4px}.notification-type,.notification-date{font-size:11px;color:#6b7280;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.notification-type{text-transform:uppercase;font-weight:600}.notification-item.expanded{cursor:pointer}.notification-item.expanded:hover{background:#ffffff1f}.notification-time{color:#6b7280;font-size:12px}.notification-actions{display:flex;gap:8px;flex-shrink:0}.star-btn,.delete-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:6px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.star-btn:hover,.delete-btn:hover{background:#ffffff1a;color:#fff}.star-btn.starred{color:#f59e0b;background:#f59e0b1a}.star-btn.starred:hover{color:#fbbf24;background:#f59e0b33}.no-notifications{padding:40px 20px;text-align:center}.no-notifications p{color:#6b7280;font-size:14px;margin:0}.notifications-footer{padding:12px 20px;border-top:1px solid #374151;text-align:center}.clear-all-btn{background:none;border:none;color:#ef4444;cursor:pointer;font-size:13px;padding:6px 12px;border-radius:6px;transition:all .2s ease}.clear-all-btn:hover{background:#ef44441a}@media(max-width:768px){.notifications-panel{width:350px;right:-20px}}@media(max-width:480px){.notifications-panel{width:calc(100vw - 40px);right:-20px}.notifications-header{flex-direction:column;align-items:flex-start;gap:12px}.notifications-header-actions{width:100%;justify-content:space-between}}.layout-container{display:flex;min-height:100vh;background-color:var(--bg-primary)}.layout-container{--sidebar-width: 280px}.sidebar{width:var(--sidebar-width);height:100vh;display:flex;flex-direction:column;padding:2rem 1.5rem;position:fixed;top:0;left:0;border-right:1px solid var(--border-color);z-index:100;overflow-y:auto;overflow-x:hidden;transition:width .3s ease-in-out}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px;transition:background .3s ease}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar.collapsed{width:0;padding:0;overflow:hidden}.sidebar-toggle{background:none;border:none;width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-normal);text-align:left;font-size:.9rem}.sidebar-toggle:hover{background:#ffffff0d;color:var(--text-primary);transform:translate(4px)}.sidebar-toggle-collapsed{position:fixed;top:50%;left:0;transform:translateY(-50%);background:#ffffff1a;border:1px solid var(--border-color);border-radius:0 8px 8px 0;width:40px;height:60px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:var(--transition-normal);z-index:101;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sidebar-toggle-collapsed:hover{background:#ffffff26;color:var(--text-primary);width:50px}.sidebar.collapsed .sidebar-logo img{max-height:40px}.sidebar.collapsed .sidebar-nav,.sidebar.collapsed .sidebar-footer{display:none}.sidebar-logo{display:flex;justify-content:center;align-items:center;padding:.5rem;margin-bottom:2.5rem;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.sidebar-logo img{max-width:100%;height:auto;max-height:60px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0,0,0,.2))}.sidebar-nav{display:flex;flex-direction:column;gap:8px;flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;color:var(--text-secondary);text-decoration:none;transition:var(--transition-normal)}.nav-item:hover{background:#ffffff0d;color:var(--text-primary);transform:translate(4px)}.nav-item.active{background:var(--accent-glow);color:var(--accent-primary);border-left:3px solid var(--accent-primary)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border-color);padding-top:1.5rem}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:var(--sidebar-width);transition:margin-left .3s ease-in-out}.sidebar.collapsed~.main-content{margin-left:0}.header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:90}.header-search{display:flex;align-items:center;background:#ffffff0d;padding:10px 16px;border-radius:12px;width:400px;gap:12px;border:1px solid transparent;transition:var(--transition-fast)}.header-search:focus-within{border-color:var(--accent-primary);background:#ffffff14}.header-search input{background:none;border:none;color:var(--text-primary);width:100%;font-family:var(--font-main);outline:none}.header-search input::placeholder{color:var(--text-muted)}.search-icon{color:var(--text-muted)}.header-actions{display:flex;align-items:center;gap:24px}.icon-btn{background:none;color:var(--text-secondary);position:relative;padding:8px}.icon-btn:hover{color:var(--text-primary);background:#ffffff0d}.badge{position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--accent-primary);border-radius:50%;border:2px solid var(--bg-secondary)}.user-profile{display:flex;align-items:center;gap:12px;padding-left:24px;border-left:1px solid var(--border-color)}.user-profile img{width:40px;height:40px;border-radius:50%;border:2px solid var(--border-color)}.user-info{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:.95rem}.user-role{font-size:.8rem;color:var(--text-muted)}.content-area{padding:2rem;flex:1}.dashboard-container{display:flex;flex-direction:column;gap:2.5rem;animation:fadeIn .5s ease-out}.page-title{font-size:2rem;margin-bottom:.5rem}.page-subtitle{color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card{padding:1.5rem;border-radius:20px;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px}.stat-card:hover{transform:translateY(-5px);box-shadow:var(--card-shadow)}.stat-header{display:flex;justify-content:space-between;align-items:center}.stat-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-icon-wrapper.up{background:#10b9811a;color:var(--accent-primary)}.stat-icon-wrapper.down{background:#ef44441a;color:#ef4444}.stat-trend{font-size:.875rem;font-weight:600;padding:4px 8px;border-radius:6px}.stat-trend.up{color:var(--accent-primary);background:#10b9811a}.stat-trend.down{color:#ef4444;background:#ef44441a}.stat-value{font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.stat-title{color:var(--text-secondary);font-size:.9rem}.dashboard-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.content-card{padding:1.5rem;border-radius:24px;display:flex;flex-direction:column;gap:1.5rem}.card-header{display:flex;justify-content:space-between;align-items:center}.text-btn{background:none;color:var(--accent-primary);font-weight:600;font-size:.9rem}.text-btn:hover{text-decoration:underline}.chart-placeholder{height:300px;display:flex;align-items:flex-end;padding-top:2rem}.bar-chart{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.bar{flex:1;background:linear-gradient(to top,var(--accent-primary),var(--accent-secondary));border-radius:6px 6px 0 0;transition:height 1s cubic-bezier(.4,0,.2,1);opacity:.8}.bar:hover{opacity:1;filter:brightness(1.2)}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;gap:12px;padding:12px;border-radius:12px;transition:var(--transition-fast)}.activity-item:hover{background:#ffffff08}.activity-avatar{width:40px;height:40px;background:var(--bg-tertiary);border-radius:10px;flex-shrink:0}.activity-info{display:flex;flex-direction:column;gap:4px}.activity-text{font-size:.9rem}.activity-time{font-size:.8rem;color:var(--text-muted)}@media(max-width:1024px){.dashboard-content-grid{grid-template-columns:1fr}}.users-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.users-table{width:100%;border-collapse:collapse}.users-table th{text-align:left;padding:1.25rem 1.5rem;background:#ffffff05;color:var(--text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.users-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.users-table tr:hover td{background:#ffffff03}.user-info-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:36px;height:36px;background:var(--bg-tertiary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.user-name{font-weight:600;color:var(--text-primary)}.user-email{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.9rem}.role-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:capitalize}.role-badge.admin{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.role-badge.user{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.user-form{display:flex;flex-direction:column;gap:1.5rem}.radio-label input[type=radio]{appearance:none;-webkit-appearance:none;width:30px;height:30px;min-width:30px;min-height:30px;border:2px solid var(--border-color);border-radius:50%;outline:none;transition:var(--transition-fast);cursor:pointer;position:relative;box-sizing:border-box;flex-shrink:0;padding:0;margin:0 25px 0 0;transform:translateY(2px)}.checkbox-label{display:flex;align-items:center;gap:0;cursor:pointer;font-size:.9rem;color:var(--text-primary);margin-bottom:10px;padding:8px 12px;border-radius:8px;transition:var(--transition-fast)}.checkbox-label:hover{background:#ffffff0d}.checkbox-label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:24px;height:24px;min-width:24px;min-height:24px;border:2px solid var(--border-color);border-radius:6px;background:transparent;cursor:pointer;position:relative;flex-shrink:0;padding:0;margin:0 25px 0 0;transition:var(--transition-fast);transform:translateY(10px)}.checkbox-group{max-height:200px;overflow-y:auto;padding:12px;background:#ffffff05;border-radius:8px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:4px}.assigned-items{display:flex;flex-wrap:wrap;gap:6px;max-width:300px}.assigned-project,.assigned-task{display:inline-block;padding:4px 8px;background:#10b9811a;color:var(--accent-primary);border:1px solid rgba(16,185,129,.2);border-radius:12px;font-size:.75rem;font-weight:500}.assigned-task{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.no-assigned{color:var(--text-muted);font-style:italic;font-size:.85rem}.multi-select-container{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.selected-items{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;padding:12px;background:#ffffff05;border:1px solid var(--border-color);border-radius:8px;margin-bottom:8px}.selected-item{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#10b9811a;color:var(--accent-primary);border:1px solid rgba(16,185,129,.2);border-radius:12px;font-size:.85rem;font-weight:500}.remove-item{background:none;border:none;color:var(--accent-primary);font-size:16px;font-weight:700;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition-fast)}.remove-item:hover{background:#10b98133}.custom-select-wrapper{position:relative;min-width:250px;z-index:10001;margin-top:8px}.custom-select-header{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-primary);border-radius:10px;padding:10px 16px;font-size:.85rem;cursor:pointer;outline:none;transition:border-color .2s;display:flex;justify-content:space-between;align-items:center;min-width:250px}.custom-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:8px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10001;max-height:300px;overflow-y:auto}.search-input-wrapper input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.85rem}.option-item{padding:12px 16px;cursor:pointer;transition:background-color .2s;font-size:.85rem;color:var(--text-primary)}.users-table th:nth-child(4),.users-table th:nth-child(5){min-width:200px}.users-table td:nth-child(4),.users-table td:nth-child(5){max-width:200px;word-wrap:break-word}.notes-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;animation:fadeIn .5s ease-out}.note-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:var(--transition-fast);position:relative;overflow:hidden}.note-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000004d;border-color:var(--accent-primary)}.note-header{display:flex;justify-content:space-between;align-items:center}.note-icon{width:40px;height:40px;background:#10b9811a;color:var(--accent-primary);border-radius:10px;display:flex;align-items:center;justify-content:center}.note-date{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.85rem}.note-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.note-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.4}.note-text{margin:0;color:var(--text-secondary);line-height:1.6;font-size:.9rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;box-orient:vertical;overflow:hidden}.note-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid var(--border-color)}.note-author{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.85rem}.note-actions{display:flex;gap:8px}.note-form{display:flex;flex-direction:column;gap:1.5rem}.form-group input,.form-group textarea{padding:12px 16px;background:#ffffff0d;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);outline:none;font-family:inherit;transition:var(--transition-fast)}.form-group textarea{resize:vertical;min-height:120px;line-height:1.5}@media(max-width:768px){.notes-grid{grid-template-columns:1fr}.modal-content{width:90%;padding:1.5rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}}.customers-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.table-controls{padding:1rem;border-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:1rem}.secondary-btn{background:#ffffff0d;color:var(--text-primary);padding:10px 16px;display:flex;align-items:center;gap:8px;font-weight:500;border:1px solid var(--border-color)}.customers-table{width:100%;border-collapse:collapse}.customers-table th{text-align:left;padding:1.25rem 1.5rem;background:#ffffff05;color:var(--text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.customers-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.customers-table tr:hover td{background:#ffffff03}.customer-info-cell{display:flex;align-items:center;gap:12px}.avatar-placeholder{width:36px;height:36px;background:var(--bg-tertiary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.customer-name{font-weight:600;color:var(--text-primary)}.customer-email{font-size:.8rem;color:var(--text-muted)}.status-badge.pendiente,.status-badge.pending{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.icon-btn-small{background:none;color:var(--text-muted);padding:6px}.modal-content{position:relative;z-index:10000;width:600px;padding:2.5rem;border-radius:24px;display:flex;flex-direction:column;gap:2rem;box-shadow:0 25px 50px #00000080;background:var(--bg-secondary);border:1px solid var(--border-color)}.wide-modal{width:98%!important;max-width:none;height:96vh;max-height:96vh;border-radius:16px;overflow-y:auto;padding:0!important;scrollbar-width:thin;scrollbar-color:var(--accent-primary) var(--bg-secondary);min-width:1200px}.wide-modal::-webkit-scrollbar{width:6px}.wide-modal::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:10px}.modal-header-extended{padding:1.5rem 2.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--bg-secondary);z-index:10}.modal-header-extended h2{margin:0;font-size:1.5rem}.extended-form{padding:2rem 2.5rem;display:flex;flex-direction:column;gap:2.5rem}.form-section{display:flex;flex-direction:column;gap:1.5rem}.section-header{font-size:.9rem;font-weight:600;color:var(--text-primary);background:#10b9811a;padding:10px 20px;border-radius:8px;margin-bottom:.5rem;border-left:4px solid var(--accent-primary)}.checkbox-label{display:flex;align-items:center;gap:0;cursor:pointer;font-size:.9rem;color:var(--text-secondary)}.checkbox-label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:24px;height:24px;min-width:24px;min-height:24px;border:2px solid var(--border-color);border-radius:6px;background:transparent;cursor:pointer;position:relative;padding:0;margin:0 25px 0 0;transform:translateY(2px);flex-shrink:0;transition:var(--transition-fast)}.checkbox-label input[type=checkbox]:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.checkbox-label input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;padding:0 10px}.radio-label{display:flex;align-items:center;gap:0;cursor:pointer;font-size:1.1rem;color:var(--text-primary)}.radio-label input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:30px;height:30px;min-width:30px;min-height:30px;max-width:30px;max-height:30px;aspect-ratio:1/1;border:2px solid var(--border-color);border-radius:50%;outline:none;transition:var(--transition-fast);cursor:pointer;position:relative;box-sizing:border-box;flex-shrink:0;padding:0;margin:0 25px 0 0;transform:translateY(10px)}.radio-label input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;background:var(--accent-primary);border-radius:50%;box-sizing:border-box}.modal-actions-sticky{padding-top:2rem;padding-bottom:1rem;margin-top:1rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem;position:sticky;bottom:0;background:var(--bg-secondary)}.close-btn{background:none;border:none;color:var(--text-muted);font-size:2rem;cursor:pointer}.close-btn:hover{color:var(--text-primary)}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:1.5rem}.projects-container{animation:fadeIn .5s ease-out}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.empty-state{grid-column:1 / -1;text-align:center;padding:48px 24px;border-radius:20px;color:var(--text-muted)}.empty-icon{margin-bottom:16px;opacity:.5}.empty-state h3{margin:0 0 8px;color:var(--text-primary);font-size:1.5rem}.empty-state p{margin:0;font-size:1rem;line-height:1.5}.project-card{padding:24px;border-radius:20px;transition:all .3s ease;display:flex;flex-direction:column;gap:16px}.project-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0003;border-color:var(--accent-primary)}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start}.project-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;color:#fff}.project-status-badge{font-size:.75rem;font-weight:600;padding:4px 12px;border-radius:20px;background:#ffffff1a;color:var(--accent-primary);border:1px solid rgba(var(--accent-primary-rgb),.3)}.project-name{font-size:1.25rem;font-weight:700;margin-bottom:4px}.project-customer{color:var(--text-secondary);font-size:.9rem;margin-bottom:12px}.progress-container{margin:16px 0}.progress-label{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:8px;font-weight:500}.progress-bar-bg{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:4px;transition:width 1s ease-in-out}.project-card-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}.project-deadline{display:flex;flex-direction:column;font-size:.8rem}.project-deadline span:first-child{color:var(--text-secondary);font-weight:500}.project-deadline span:last-child{font-weight:600;color:var(--text-primary)}.progress-info-field{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);margin:4px 0 8px}.progress-info-label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.progress-info-value{font-size:.8rem;color:var(--accent-primary);font-weight:600}.tasks-container{animation:fadeIn .5s ease-out}.task-filters{flex-wrap:wrap;gap:12px;align-items:center;position:relative;z-index:1}.filter-selects{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.filter-select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-primary);border-radius:10px;padding:8px 30px 8px 14px;font-size:.82rem;cursor:pointer;outline:none;transition:border-color .2s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.filter-select:focus{border-color:var(--accent-primary)}.filter-select option{background:#1a1a2e;color:#fff}.custom-select-wrapper{position:relative;min-width:200px;z-index:10000}.custom-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;max-height:300px;overflow-y:auto}.filter-clear-btn{display:flex;align-items:center;gap:5px;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:var(--text-secondary);border-radius:8px;padding:8px 14px;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.filter-clear-btn:hover{background:#ffffff24;color:var(--text-primary)}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px;min-height:70vh}.kanban-board.expanded{display:flex;gap:20px;overflow-x:auto;padding-bottom:20px}.kanban-board.expanded .kanban-column{min-width:320px;flex:0 0 auto}.task-id-ref{font-size:.75rem;font-weight:700;color:#fff6}.edit-icon-btn{background:transparent;border:none;cursor:pointer;color:#ffffff4d;margin-left:6px;padding:2px;display:flex;align-items:center;border-radius:4px;transition:color .2s,background .2s}.edit-icon-btn:hover{color:var(--accent-primary);background:#ffffff0f}.edit-task-modal{max-width:600px}.edit-modal-title{display:flex;align-items:center;gap:10px}.edit-modal-icon{color:var(--accent-primary)}.edit-task-id{font-size:.85rem;font-weight:500;color:#fff6;margin-left:6px}.task-title-ref{font-size:1rem;font-weight:500;color:#4ade80;margin:0 0 8px}.header-left{display:flex;align-items:center}.kanban-column{border-radius:20px;padding:20px;background:#ffffff08;display:flex;flex-direction:column}.column-header{margin-bottom:20px}.column-title{display:flex;align-items:center;gap:10px}.status-dot{width:10px;height:10px;border-radius:50%}.column-title h3{font-size:1.1rem;font-weight:700;margin:0}.task-count{background:#ffffff1a;padding:2px 8px;border-radius:12px;font-size:.8rem;font-weight:600;color:var(--text-secondary)}.column-content{display:flex;flex-direction:column;gap:16px;flex:1}.task-card{padding:16px;border-radius:15px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);transition:all .2s ease;cursor:grab}.task-card:active{cursor:grabbing}.task-card.dragging{opacity:.4;border:2px dashed var(--accent-primary);transform:scale(.95)}.kanban-column{border-radius:20px;padding:20px;background:#ffffff08;display:flex;flex-direction:column;transition:background .2s ease,border-color .2s ease;border:1px solid transparent}.kanban-column.drag-over{background:rgba(var(--accent-primary-rgb),.05);border-color:var(--accent-primary);box-shadow:inset 0 0 20px rgba(var(--accent-primary-rgb),.1)}.task-card:hover{transform:translateY(-3px);border-color:var(--accent-primary);background:#ffffff14}.task-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.priority-tag{font-size:.65rem;font-weight:800;padding:2px 8px;border-radius:4px}.priority-tag.baja{background:#2ecc7133;color:#2ecc71}.priority-tag.media{background:#f1c40f33;color:#f1c40f}.priority-tag.alta{background:#e74c3c33;color:#e74c3c}.delete-task-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;opacity:0;transition:opacity .2s}.task-card:hover .delete-task-btn{opacity:1}.delete-task-btn:hover{color:#e74c3c}.task-title{font-size:1rem;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.task-desc{font-size:.85rem;color:var(--text-secondary);margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-meta{display:flex;flex-wrap:wrap;gap:12px}.meta-item{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-secondary)}@media(max-width:1024px){.kanban-board{grid-template-columns:1fr}}.rates-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.primary-btn{background:var(--accent-primary);color:#fff;padding:12px 24px;display:flex;align-items:center;gap:8px;font-weight:600;box-shadow:0 4px 15px var(--accent-glow)}.table-controls{padding:1rem;border-radius:16px;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.search-bar{display:flex;align-items:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.75rem 1rem;flex:1;max-width:400px;transition:border-color .2s}.rate-customer{color:var(--text-secondary);font-size:.9rem}.rates-table{width:100%;border-collapse:collapse}.rates-table th{text-align:left;padding:1.25rem 1.5rem;background:#ffffff05;color:var(--text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.rates-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.rates-table tr:hover{background:#ffffff05}.rate-name{font-weight:600;color:var(--text-primary)}.rate-description{color:var(--text-secondary);font-size:.9rem}.rate-price{font-weight:700;color:var(--accent-primary);font-size:1.1rem}.rate-unit{color:var(--text-secondary);text-transform:capitalize}.category-tag{background:#ffffff1a;color:var(--text-primary);padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:500}.status-badge{padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-badge.activo{background:#2ecc7133;color:#2ecc71}.status-badge.inactivo{background:#e74c3c33;color:#e74c3c}.rate-actions{display:flex;gap:8px}.icon-btn-small{background:transparent;border:none;cursor:pointer;padding:6px;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.edit-btn:hover{color:var(--accent-primary)}.delete-btn:hover{color:#e74c3c}.no-results{text-align:center;padding:3rem;color:var(--text-secondary);font-style:italic}.modal-content{background:var(--bg-primary);border-radius:20px;padding:2rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;border:1px solid rgba(255,255,255,.1)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.close-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary);font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:var(--text-primary);font-size:.9rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary)}.form-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.secondary-btn{background:#ffffff1a;color:var(--text-primary);padding:.75rem 1.5rem;border:none;border-radius:10px;cursor:pointer;font-weight:500;transition:all .2s}.secondary-btn:hover{background:#fff3}.danger-btn{background:#e74c3c;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:10px;cursor:pointer;font-weight:500;transition:all .2s}.danger-btn:hover{background:#c0392b}.delete-confirm-modal{text-align:center;max-width:400px}.delete-icon-wrapper{margin-bottom:1rem}.delete-icon{color:#e74c3c}.delete-confirm-modal h2{margin-bottom:1rem}.delete-confirm-modal p{color:var(--text-secondary);margin-bottom:2rem}.modal-actions.full-width{justify-content:center}.budgets-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.budgets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.budget-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column}.budget-card:hover{background:#ffffff0f;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.budget-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.budget-title{display:flex;flex-direction:column;gap:.5rem;flex:1}.budget-title h3{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.budget-actions{display:flex;gap:.5rem}.budget-content{display:flex;flex-direction:column;gap:1rem;flex:1}.budget-meta{display:flex;flex-wrap:wrap;gap:1rem}.budget-description{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.budget-totals{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.budget-footer{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.budget-footer button{flex:1}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:99999;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:all}.modal-content{position:relative;z-index:100000;width:90%;max-width:800px;max-height:90vh;padding:2rem;border-radius:20px;display:flex;flex-direction:column;gap:1.5rem;box-shadow:0 25px 50px #00000080;background:var(--bg-secondary);border:1px solid var(--border-color);overflow-y:auto}.budget-modal{max-height:85vh;width:98%;max-width:1400px;min-width:1300px}.modal-header h2{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.budget-form{display:flex;flex-direction:column;gap:1.5rem}.span-2{grid-column:span 2}.view-modal{max-width:900px;width:90%}.view-content{display:flex;flex-direction:column;gap:2rem}.budget-info{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1.5rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.85rem;color:var(--text-secondary);font-weight:500}.info-item span{font-size:.95rem;color:var(--text-primary);font-weight:600}.description-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.description-section label{font-size:.9rem;color:var(--text-secondary);font-weight:500;display:block;margin-bottom:.5rem}.description-section p{color:var(--text-primary);line-height:1.5;margin:0}.items-table{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;overflow:hidden}.table-header{display:grid;grid-template-columns:3fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);font-weight:600;color:var(--text-primary)}.table-row{display:grid;grid-template-columns:3fr 1fr 1fr 1fr;gap:1rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-primary)}.table-row:last-child{border-bottom:none}@media(max-width:768px){.budgets-grid,.form-grid{grid-template-columns:1fr}.item-inputs{grid-template-columns:1fr;gap:.5rem}.budget-footer{flex-direction:column}.modal-content{width:95%;padding:1.5rem}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.table-controls{flex-direction:column;gap:1rem}.search-bar{width:100%}}.invoices-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.smtp-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:16px;padding:1.5rem}.warning-content{display:flex;align-items:center;gap:1rem}.warning-content h3{margin:0 0 .5rem;color:#f59e0b;font-size:1.1rem;font-weight:600}.warning-content p{margin:0;color:var(--text-secondary);font-size:.9rem}.warning-content svg{color:#f59e0b;flex-shrink:0}.table-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-radius:16px;margin-bottom:2rem}.search-bar{display:flex;align-items:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:.75rem 1rem;width:300px;transition:all .2s}.search-bar:focus-within{border-color:var(--accent-primary);background:#ffffff14}.search-bar input{background:none;border:none;color:var(--text-primary);outline:none;margin-left:.75rem;width:100%;font-size:.9rem}.search-bar input::placeholder{color:var(--text-muted)}.search-icon{color:var(--text-secondary);flex-shrink:0}.invoices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.invoice-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column}.invoice-card:hover{background:#ffffff0f;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.invoice-title{display:flex;flex-direction:column;gap:.5rem;flex:1}.invoice-title h3{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;color:#fff;align-self:flex-start}.invoice-actions{display:flex;gap:.5rem}.icon-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.icon-btn:hover{background:#ffffff1a;color:var(--text-primary)}.invoice-content{display:flex;flex-direction:column;gap:1rem;flex:1}.invoice-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.invoice-totals{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.total-item{display:flex;justify-content:space-between;font-size:.85rem}.total-item.main-total{font-weight:700;font-size:1rem;color:var(--accent-primary);padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1)}.invoice-footer{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.invoice-footer button{flex:1}.primary-btn.disabled{background:#ffffff1a;color:var(--text-muted);cursor:not-allowed;opacity:.6}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary);grid-column:1 / -1}.email-modal{max-width:1000px;width:95%;min-width:900px}.email-form{display:flex;flex-direction:column;gap:1.5rem}.invoice-summary{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1rem}.invoice-summary h4{margin:0 0 .75rem;color:var(--text-primary);font-size:1rem;font-weight:600}.summary-info{display:flex;flex-wrap:wrap;gap:1rem}.summary-info span{font-size:.9rem;color:var(--text-secondary)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-primary);background:#ffffff14}.form-group textarea{resize:vertical;min-height:120px}.attachments-section{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1rem}.attachments-section h4{margin:0 0 1rem;color:var(--text-primary);font-size:1rem;font-weight:600}.attachment-list{display:flex;flex-direction:column;gap:.5rem}.attachment-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:.9rem;color:var(--text-primary)}.check-icon{color:#10b981;margin-left:auto}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-color)}.primary-btn{background:var(--accent-primary);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.5rem;justify-content:center}.secondary-btn{background:#ffffff1a;color:var(--text-primary);padding:.75rem 1.5rem;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:.5rem;justify-content:center}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.placeholder-content{text-align:center;padding:2rem;color:var(--text-secondary)}.invoice-modal{max-height:85vh;width:98%;max-width:1400px;min-width:1300px}.invoice-form{display:flex;flex-direction:column;gap:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.items-section{border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;background:#ffffff05}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.items-list{display:flex;flex-direction:column;gap:.75rem}.item-row{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:1rem}.item-inputs{display:grid;grid-template-columns:4fr 1fr 1fr 1fr auto;gap:.75rem;align-items:center}.item-inputs input{padding:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-primary);outline:none;transition:all .2s;font-size:.9rem}.item-inputs input:focus{border-color:var(--accent-primary);background:#ffffff14}.item-total{font-weight:600;color:var(--accent-primary);text-align:right;font-size:.95rem}.totals-section{background:#ffffff08;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.total-row{display:flex;justify-content:space-between;font-size:.95rem}.total-row.main-total{font-weight:700;font-size:1.2rem;color:var(--accent-primary);padding-top:.75rem;border-top:1px solid var(--border-color)}.tax-rate{display:flex;align-items:center;gap:1rem}.tax-rate input{width:80px}.delete-icon-wrapper{width:64px;height:64px;background:#ef44441a;color:#ef4444;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.delete-icon{color:#ef4444}.danger-btn{background:#ef4444;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.danger-btn:hover{background:#dc2626;transform:translateY(-1px)}.icon-btn.delete-btn:hover{background:#ef44441a;color:#ef4444}.debug-log-modal{max-width:900px;width:95%;max-height:85vh;overflow-y:auto}.debug-log-content{display:flex;flex-direction:column;gap:1.5rem}.debug-log-info h3,.debug-log-entries h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;font-weight:600}.debug-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1rem}.debug-info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.debug-info-item:last-child{border-bottom:none}.debug-label{font-weight:500;color:var(--text-secondary);font-size:.9rem}.debug-value{font-weight:600;color:var(--text-primary);font-size:.9rem}.debug-value.debug-active{color:#3b82f6;font-weight:700}.log-container{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1rem;max-height:300px;overflow-y:auto}.log-text{font-family:Courier New,monospace;font-size:.85rem;line-height:1.4;color:#0f0;margin:0;white-space:pre-wrap;word-wrap:break-word}.debug-actions{display:flex;gap:1rem;justify-content:center;padding:1rem 0;border-top:1px solid var(--border-color)}@media(max-width:768px){.invoices-grid,.form-grid{grid-template-columns:1fr}.item-inputs{grid-template-columns:1fr;gap:.5rem}.invoice-footer,.modal-actions{flex-direction:column}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.table-controls{flex-direction:column;gap:1rem}.search-bar{width:100%}.warning-content{flex-direction:column;text-align:center}.summary-info{flex-direction:column}}.domains-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.domain-filters{flex-wrap:wrap;gap:12px;align-items:center;position:relative;z-index:1}.page-title{margin:0;font-size:2rem;font-weight:700;color:var(--text-primary)}.page-subtitle{margin:.5rem 0 0;color:var(--text-muted);font-size:1rem}.primary-btn{background:var(--accent-primary);color:#fff;padding:12px 24px;display:flex;align-items:center;gap:8px;font-weight:600;border:none;border-radius:12px;cursor:pointer;box-shadow:0 4px 15px var(--accent-glow);transition:var(--transition-fast)}.primary-btn:hover{background:var(--accent-secondary);transform:translateY(-2px)}.filter-selects{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.custom-select-wrapper{position:relative;min-width:200px;z-index:10001}.custom-select-header{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-primary);border-radius:10px;padding:8px 14px;font-size:.82rem;cursor:pointer;outline:none;transition:border-color .2s;display:flex;justify-content:space-between;align-items:center;min-width:200px}.custom-select-header:hover{border-color:var(--accent-primary)}.custom-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10001;max-height:300px;overflow-y:auto}.search-input-wrapper{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid rgba(255,255,255,.1)}.search-input-wrapper .search-icon{color:var(--text-secondary)}.search-input-wrapper input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.82rem}.search-input-wrapper input::placeholder{color:var(--text-secondary)}.options-list{max-height:200px;overflow-y:auto}.option-item{padding:10px 14px;cursor:pointer;transition:background-color .2s;font-size:.82rem;color:var(--text-primary)}.option-item:hover{background:#ffffff14}.option-item.selected{background:var(--accent-primary);color:#fff}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.9rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.filter-group select{padding:8px 12px;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);outline:none;font-family:inherit;transition:var(--transition-fast);min-width:140px}.filter-group select option{background:var(--bg-secondary);color:var(--text-primary)}.filter-group select:focus{border-color:var(--accent-primary);background:#ffffff14}.search-bar{flex:1;display:flex;align-items:center;gap:12px;padding:8px 16px;background:#ffffff0d;border-radius:10px;border:1px solid var(--border-color)}.search-bar input{background:none;border:none;color:var(--text-primary);width:100%;outline:none}.table-container{border-radius:20px;overflow:hidden}.domains-table{width:100%;border-collapse:collapse}.domains-table th{text-align:left;padding:1.25rem 1.5rem;background:#ffffff05;color:var(--text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.domains-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.domains-table tr:hover td{background:#ffffff03}.domain-info-cell{display:flex;align-items:center;gap:12px}.domain-icon{width:36px;height:36px;background:var(--bg-tertiary);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.domain-name{font-weight:600;color:var(--text-primary)}.domain-link{font-weight:600;color:var(--accent-primary);text-decoration:none;transition:var(--transition-fast)}.domain-link:hover{color:var(--accent-secondary);text-decoration:underline}.status-badge{padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-badge.activo,.status-badge.active{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-badge.inactivo,.status-badge.inactive{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.text-right{text-align:right}.icon-btn-small{background:none;color:var(--text-muted);padding:6px;border:none;border-radius:8px;cursor:pointer;transition:var(--transition-fast)}.icon-btn-small:hover{color:var(--text-primary);background:#ffffff0d}.action-btns{display:flex;justify-content:flex-end;gap:8px}.edit-btn:hover{color:var(--accent-primary);background:#10b9811a}.edit-btn{display:inline-flex!important;visibility:visible!important;opacity:1!important}.action-btns{display:flex;gap:8px;justify-content:flex-end}.delete-btn:hover{color:#ef4444;background:#ef44441a}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:all}.modal-content{position:relative;z-index:10000;width:500px;padding:2.5rem;border-radius:24px;display:flex;flex-direction:column;gap:2rem;box-shadow:0 25px 50px #00000080;background:var(--bg-secondary);border:1px solid var(--border-color)}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.close-btn{background:none;border:none;color:var(--text-muted);font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:var(--transition-fast)}.close-btn:hover{color:var(--text-primary);background:#ffffff0d}.domain-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:8px}.form-group input,.form-group select{padding:12px 16px;background:#ffffff0d;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);outline:none;font-family:inherit;transition:var(--transition-fast)}.form-group select option{background:var(--bg-secondary);color:var(--text-primary)}.radio-group{display:flex;gap:2rem;padding:10px 0}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--text-primary)}.radio-label input[type=radio]{appearance:none;width:20px;height:20px;border:2px solid var(--border-color);border-radius:50%;outline:none;transition:var(--transition-fast);cursor:pointer;position:relative;box-sizing:border-box;flex-shrink:0}.radio-label input[type=radio]:checked{border-color:var(--accent-primary)}.radio-label input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:var(--accent-primary);border-radius:50%;box-sizing:border-box}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.secondary-btn{background:#ffffff0d;color:var(--text-primary);padding:10px 16px;display:flex;align-items:center;gap:8px;font-weight:500;border:1px solid var(--border-color);border-radius:12px;cursor:pointer;transition:var(--transition-fast)}.secondary-btn:hover{background:#ffffff1a}.delete-confirm-modal p{color:var(--text-secondary);line-height:1.6;margin:1rem 0}.danger-btn{background:#ef4444;color:#fff;padding:12px 24px;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:var(--transition-fast)}.fade-in{animation:fadeIn .4s ease-out}.tools-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.tool-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:1rem}.tool-card:hover{background:#ffffff0f;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.tool-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.tool-content h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.1rem;font-weight:600}.tool-content p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.modal-content{background:var(--bg-secondary);border-radius:20px;padding:2rem;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;border:1px solid var(--border-color)}.qr-generator-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.qr-preview-section{display:flex;flex-direction:column;align-items:center;justify-content:center}.qr-preview{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:#ffffff05;border-radius:12px;border:1px solid var(--border-color);min-height:320px}.qr-preview img{border-radius:8px;box-shadow:0 4px 12px #0000001a}.qr-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-muted);opacity:.6}.qr-placeholder p{margin:0;font-style:italic}.qr-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.qr-action-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff14;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem;font-weight:500}@media(max-width:768px){.qr-generator-content,.tools-grid{grid-template-columns:1fr}.tool-card{padding:1rem}.tool-icon{width:50px;height:50px}}.qr-manager-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.qr-controls{margin-bottom:1rem}.search-bar{display:flex;align-items:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.75rem 1rem;max-width:400px;transition:border-color .2s}.search-bar:focus-within{border-color:var(--accent-primary)}.search-icon{color:var(--text-secondary);margin-right:.75rem}.search-bar input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.9rem}.search-bar input::placeholder{color:var(--text-secondary)}.qr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.qr-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column}.qr-card:hover{background:#ffffff0f;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.qr-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.qr-header h3{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600;flex:1}.qr-actions-mini{display:flex;gap:.5rem}.qr-content{display:flex;flex-direction:column;gap:1rem;flex:1}.qr-image{display:flex;justify-content:center;align-items:center;padding:1rem;background:#ffffff05;border-radius:12px;border:1px solid var(--border-color)}.qr-image img{border-radius:8px;max-width:150px;height:auto}.qr-info{display:flex;flex-direction:column;gap:.5rem}.qr-description{color:var(--text-secondary);font-size:.9rem;margin:0}.qr-url{color:var(--accent-primary);font-size:.85rem;word-break:break-all;margin:0}.qr-date{color:var(--text-muted);font-size:.8rem;margin:0}.qr-footer{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.qr-action-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff14;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem;font-weight:500;flex:1}.qr-action-btn:hover{background:#ffffff1f;border-color:var(--accent-primary);color:var(--text-primary)}.qr-action-btn.success{background:#2ecc7126;border-color:#2ecc714d;color:#2ecc71}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.empty-state h3{margin:1rem 0 .5rem;color:var(--text-primary)}.empty-state p{margin:0 0 2rem}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-secondary);border-radius:20px;padding:2rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;border:1px solid var(--border-color)}.qr-modal{display:flex;flex-direction:column;gap:2rem}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-header h2{margin:0;color:var(--text-primary)}.close-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-btn:hover{background:#ffffff1a;color:var(--text-primary)}.qr-form-section{display:flex;flex-direction:column;gap:1rem}.form-group input,.form-group textarea{padding:.75rem 1rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-primary);background:#ffffff14}.form-group textarea{resize:vertical;min-height:80px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.primary-btn:hover{background:var(--accent-secondary);transform:translateY(-1px)}.secondary-btn{background:#ffffff1a;color:var(--text-primary);padding:.75rem 1.5rem;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.secondary-btn:hover{background:#ffffff26;border-color:var(--accent-primary)}.icon-btn-small{background:transparent;border:none;cursor:pointer;padding:6px;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.icon-btn-small:hover{background:#ffffff1a}.icon-btn-small.delete-btn:hover{color:#ef4444;background:#ef44441a}.delete-confirm-modal{text-align:center;align-items:center}.delete-confirm-modal p{color:var(--text-secondary);line-height:1.6}.delete-icon-wrapper{width:64px;height:64px;background:#ef44441a;color:#ef4444;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.danger-btn{background:#ef4444;color:#fff;padding:12px 24px;font-weight:600;border-radius:12px;transition:var(--transition-fast)}.danger-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 15px #ef44444d}.modal-actions.full-width{justify-content:stretch;width:100%}.modal-actions.full-width button{flex:1}@media(max-width:768px){.qr-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.qr-controls{width:100%}.search-bar{max-width:none}}.settings-container{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .5s ease-out}.page-header{display:flex;justify-content:space-between;align-items:center}.page-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0}.page-subtitle{color:var(--text-secondary);margin:.5rem 0 0}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(600px,1fr));gap:2rem}.settings-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2rem;transition:all .3s ease}.settings-section:hover{background:#ffffff0f;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.section-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.section-info h2{margin:0 0 .5rem;color:var(--text-primary);font-size:1.3rem;font-weight:600}.section-info p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.settings-form{display:flex;flex-direction:column;gap:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.form-group input,.form-group select{padding:.75rem 1rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus{border-color:var(--accent-primary);background:#ffffff14}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:var(--text-secondary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary)}.debug-checkbox{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:1rem;margin-top:.5rem}.debug-checkbox span{color:#3b82f6;font-weight:500}.debug-help{color:var(--text-secondary);font-size:.8rem;line-height:1.4;margin-top:.5rem;display:block;font-style:italic}.test-email-section{background:#3b82f60d;border:1px solid rgba(59,130,246,.1);border-radius:12px;padding:1.5rem;margin-top:1rem}.test-email-section h3{margin:0 0 1rem;color:#3b82f6;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.test-email-form{display:flex;flex-direction:column;gap:1rem}.test-email-info{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1rem;margin-top:.5rem}.test-email-info p{margin:0 0 .5rem;color:var(--text-secondary);font-size:.85rem;line-height:1.4}.test-email-info p:last-child{margin-bottom:0}.test-email-section .form-group input{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);color:var(--text-primary)}.test-email-section .form-group input:focus{border-color:#3b82f6;background:#3b82f614}.form-help{display:block;margin-top:.5rem;color:var(--text-secondary);font-size:.75rem;font-style:italic;line-height:1.3}.protocol-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1rem}.protocol-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:6px;transition:all .2s ease}.protocol-item:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translateY(-1px)}.protocol-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.protocol-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.3}@media(max-width:768px){.protocol-list{grid-template-columns:1fr}}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;font-size:.9rem;font-weight:500}.alert-success{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.2)}.alert-error{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.alert-info{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.settings-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.primary-btn{background:var(--accent-primary);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.5rem}.primary-btn:hover:not(:disabled){background:var(--accent-secondary);transform:translateY(-1px)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{background:#ffffff1a;color:var(--text-primary);padding:.75rem 1.5rem;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:.5rem}.secondary-btn:hover:not(:disabled){background:#ffffff26;border-color:var(--accent-primary)}.secondary-btn:disabled{opacity:.6;cursor:not-allowed}.fade-in{animation:fadeIn .3s ease-out}@media(max-width:768px){.settings-grid,.form-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.settings-section{padding:1.5rem}.section-header{flex-direction:column;text-align:center;gap:1rem}.settings-actions{flex-direction:column}}.reminders-container-v2{display:flex;flex-direction:column;min-height:calc(100vh - 80px);color:#e2e8f0;overflow-y:auto;background:transparent}.reminders-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);background:#0003}.header-left,.header-right{display:flex;align-items:center;gap:1.5rem}.test-reminder-btn{padding:.5rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#fb923c33;color:#fb923c;cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.test-reminder-btn:hover{background:#fb923c4d;border-color:#fb923c80;transform:translateY(-1px)}.today-btn{padding:.5rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:transparent;color:#fff;cursor:pointer;font-size:.875rem;transition:all .2s}.today-btn:hover{background:#ffffff1a}.nav-buttons{display:flex;gap:.5rem}.nav-buttons button{background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;padding:4px;transition:color .2s}.nav-buttons button:hover{color:#fff}.current-date-label{font-size:1.25rem;font-weight:500}.view-selector{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem;cursor:pointer}.icon-btn-v2{background:none;border:none;color:#94a3b8;cursor:pointer}.reminders-content{display:flex;flex:1;overflow:hidden}.calendar-sidebar{width:280px;padding:1.5rem;background:#0000001a;border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1.5rem}.create-btn{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem .5rem .5rem;background:#fff;color:#334155;border-radius:28px;border:none;font-weight:500;box-shadow:0 4px 12px #0000004d;cursor:pointer;width:fit-content;transition:all .2s}.create-btn:hover{box-shadow:0 6px 16px #0006}.mini-calendar{width:100%}.mini-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.875rem;padding:0 .5rem}.mini-calendar-nav{display:flex;gap:.25rem}.mini-calendar-nav button{background:none;border:none;color:#94a3b8;cursor:pointer}.mini-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.mini-weekday{font-size:.75rem;color:#64748b;padding:.5rem 0}.mini-day{font-size:.75rem;padding:.5rem 0;cursor:pointer;border-radius:50%;margin:1px;transition:all .2s}.mini-day:hover{background:#ffffff1a}.mini-day.selected{background:#3b82f6;color:#fff;font-weight:600}.mini-day.other-month{color:#475569}.sidebar-search{display:flex;align-items:center;gap:.75rem;background:#ffffff0d;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.sidebar-search input{background:none;border:none;color:#fff;font-size:.875rem;width:100%;outline:none}.calendar-filters{font-size:.875rem}.filter-group label{display:flex;justify-content:space-between;align-items:center;color:#94a3b8;margin-bottom:.75rem}.filter-item{display:flex;align-items:center;gap:.75rem;padding:.25rem 0}.weekly-grid-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.grid-header{display:flex;border-bottom:1px solid rgba(255,255,255,.1);background:#00000026}.time-col-spacer{width:70px;flex-shrink:0}.day-header{flex:1;padding:1rem 0;text-align:center;display:flex;flex-direction:column;gap:.25rem;border-left:1px solid rgba(255,255,255,.05)}.day-header.active{color:#3b82f6}.day-header.active .day-num{background:#3b82f6;color:#fff;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto}.day-name{font-size:.75rem;color:#64748b;font-weight:600}.day-num{font-size:1.5rem;margin-top:5px}.grid-body{flex:1;display:flex;overflow-y:auto;min-height:960px}.grid-body::-webkit-scrollbar{width:8px}.grid-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.time-column{width:70px;flex-shrink:0}.time-label{height:40px;font-size:.7rem;color:#64748b;text-align:right;padding-right:.75rem;display:flex;align-items:center;justify-content:flex-end;line-height:1}.grid-cells{flex:1;display:flex;flex-direction:column;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:100% 40px}.grid-row{display:flex;height:40px}.grid-cell{flex:1;border-left:1px solid rgba(255,255,255,.05);padding:2px;cursor:pointer;transition:background .1s}.grid-cell:hover{background:#ffffff05}.grid-reminder{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:4px;padding:4px;font-size:.7rem;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;margin-bottom:2px;box-shadow:0 1px 2px #0003;overflow:hidden;line-height:1.1;min-height:28px;width:100%;max-width:100%;box-sizing:border-box}.reminder-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;flex:1;min-width:5px;max-width:100%;margin-bottom:1px}.reminder-time{font-size:.6rem;opacity:.9;white-space:nowrap;flex-shrink:0;min-width:25px;align-self:flex-end}.reminder-buttons{display:flex;gap:2px;align-self:flex-end;margin-top:1px}.del-btn,.edit-btn{background:none;border:none;color:#ffffffe6;cursor:pointer;padding:1px;opacity:1;transition:opacity .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px}.reminder-user{font-size:.6rem;background:#10b98133;color:#10b981;padding:2px 4px;border-radius:3px;margin-left:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.del-btn,.edit-btn{background:none;border:none;color:#fffc;cursor:pointer;padding:2px;opacity:0;transition:opacity .2s;flex-shrink:0;margin-left:2px}.grid-reminder:hover .del-btn,.grid-reminder:hover .edit-btn{opacity:1}.danger-btn{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:500;transition:background .2s}.danger-btn:hover{background:#b91c1c}.modal-body{margin:1.5rem 0}.modal-body p{margin-bottom:.5rem;color:#e2e8f0}.checkbox-label{display:flex;align-items:center;gap:.5rem;color:#e2e8f0;cursor:pointer;font-size:.875rem;margin-top:.5rem}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6;cursor:pointer}.all-day-section{display:flex;border-bottom:2px solid rgba(59,130,246,.3);background:#3b82f60d;min-height:36px;height:auto}.all-day-cell{flex:1;min-width:0;overflow:hidden;padding:4px;border-left:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:3px;box-sizing:border-box}.all-day-reminder{background:linear-gradient(135deg,#10b981,#059669);border-radius:6px;padding:3px 4px;font-size:.7rem;margin-bottom:2px;width:100%;box-sizing:border-box;min-width:0;overflow:hidden;display:flex;flex-direction:row;align-items:center;gap:4px;justify-content:space-between;min-height:20px}.all-day-reminder-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.all-day-reminder-body .reminder-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:.7rem;color:#fff;flex:1;min-width:5px;max-width:calc(100% - 80px)}.all-day-reminder-body .reminder-time{background:#ffffff38;padding:1px 4px;border-radius:3px;font-size:.6rem;white-space:nowrap;color:#fff;flex-shrink:0;min-width:35px;max-width:40px}.all-day-reminder-actions{display:flex;flex-direction:row;gap:2px;flex-shrink:0;align-self:flex-start}.all-day-reminder .edit-btn,.all-day-reminder .del-btn{background:none;border:none;color:#ffffffe6;cursor:pointer;padding:1px;opacity:1;transition:opacity .2s;flex-shrink:0;margin-left:1px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px}.glass-modal{background:#0f172ae6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);box-shadow:0 25px 50px -12px #00000080;padding:2rem;border-radius:16px;width:100%;max-width:450px}.reminder-form .form-group{margin-bottom:1.5rem}.reminder-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.calendar-sidebar{display:none}}.reminder-type-row{display:flex;align-items:center;gap:5px;min-width:0;flex:1}.reminder-type-row .reminder-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:.75rem}.type-selector{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.type-option{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;border:2px solid rgba(255,255,255,.1);background:#ffffff0d;color:#94a3b8;font-size:.78rem;cursor:pointer;transition:all .2s}.type-option:hover{border-color:var(--type-color);color:var(--type-color);background:#ffffff14}.type-option.selected{background:var(--type-bg);border-color:transparent;color:#fff;font-weight:600;box-shadow:0 2px 8px #0000004d}.login-container{height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-primary, #0f172a);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;width:500px;height:500px;background:linear-gradient(135deg,var(--accent-primary, #10b981),var(--accent-secondary, #059669));filter:blur(120px);opacity:.1;top:-100px;right:-100px}.login-card{width:100%;max-width:450px;padding:3rem;border-radius:2rem;position:relative;z-index:1}.login-header{text-align:center;margin-bottom:2.5rem}.login-logo{width:80px;margin-bottom:1.5rem;filter:drop-shadow(0 0 10px rgba(16,185,129,.3))}.login-header h1{font-size:2rem;font-weight:700;color:var(--text-primary, #f8fafc);margin-bottom:.5rem}.login-header p{color:var(--text-muted, #64748b);font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary, #94a3b8);margin-left:.5rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1.25rem;color:var(--text-muted, #64748b);pointer-events:none}.input-wrapper input{width:100%;padding:1rem 1rem 1rem 3rem;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, rgba(255, 255, 255, .05));border-radius:1rem;color:var(--text-primary, #f8fafc);font-size:1rem;transition:var(--transition-normal, .3s ease)}.input-wrapper input:focus{outline:none;border-color:var(--accent-primary, #10b981);background:var(--bg-tertiary, #334155);box-shadow:0 0 0 4px var(--accent-glow, rgba(16, 185, 129, .15))}.submit-btn{margin-top:1rem;padding:1rem;border-radius:1rem;background:linear-gradient(135deg,var(--accent-primary, #10b981),var(--accent-secondary, #059669));color:#fff;font-weight:600;font-size:1rem;border:none;cursor:pointer;transition:var(--transition-normal, .3s ease);display:flex;align-items:center;justify-content:center;gap:.75rem}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #10b98166}.submit-btn:active{transform:translateY(0)}.error-message{padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.75rem;color:#f87171;font-size:.85rem;text-align:center;margin-bottom:1rem}@media(max-width:480px){.login-card{padding:2rem;margin:1rem}}.chat-container{display:flex;flex-direction:column;height:calc(100vh - 200px);animation:fadeIn .5s ease-out}.chat-header{margin-bottom:1.5rem}.chat-header h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0}.chat-header p{color:var(--text-secondary);margin:.5rem 0 0}.chat-content{display:flex;gap:1.5rem;height:100%;min-height:600px}.contacts-panel{width:350px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;display:flex;flex-direction:column;overflow:hidden}.contacts-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.contacts-header h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;font-weight:600}.search-box{position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:12px;color:var(--text-muted);z-index:1}.search-box input{width:100%;padding:.75rem 1rem .75rem 2.5rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit}.search-box input:focus{border-color:var(--accent-primary);background:#ffffff14}.contacts-list{flex:1;overflow-y:auto;padding:.5rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:12px;cursor:pointer;transition:all .2s;margin-bottom:.25rem}.contact-item:hover{background:#ffffff0d}.contact-item.active{background:#ffffff1a;border:1px solid var(--accent-primary)}.contact-avatar{position:relative;flex-shrink:0}.avatar-circle{width:45px;height:45px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem}.status-indicator{position:absolute;bottom:2px;right:2px;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-secondary)}.contact-info{flex:1;min-width:0}.contact-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.contact-role{font-size:.8rem;color:var(--text-muted);margin-bottom:.25rem}.last-message{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-meta{text-align:right;flex-shrink:0}.status-text{font-size:.75rem;color:var(--text-muted)}.chat-panel{flex:1;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;display:flex;flex-direction:column;overflow:hidden}.chat-window-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.chat-contact-info{display:flex;align-items:center;gap:1rem}.chat-contact-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.chat-contact-status{font-size:.85rem;color:var(--text-secondary)}.chat-actions{display:flex;gap:.5rem}.chat-action-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff0d;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.chat-action-btn:hover{background:#ffffff1a;color:var(--text-primary)}.messages-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.messages-list{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.message{display:flex;max-width:70%}.message.sent{align-self:flex-end}.message.received{align-self:flex-start}.message-content{display:flex;flex-direction:column;gap:.25rem}.message.sent .message-content{align-items:flex-end}.message.received .message-content{align-items:flex-start}.message-text{padding:.75rem 1rem;border-radius:16px;word-wrap:break-word;max-width:100%}.message.sent .message-text{background:var(--accent-primary);color:#fff;border-bottom-right-radius:4px}.message.received .message-text{background:#ffffff1a;color:var(--text-primary);border-bottom-left-radius:4px}.message-sender{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem;padding:0 .5rem}.message-time{font-size:.75rem;color:var(--text-muted);padding:0 .5rem}.empty-chat{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);text-align:center}.chat-welcome{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted)}.welcome-content{text-align:center}.welcome-content h3{margin:0 0 .5rem;color:var(--text-primary)}.message-input-container{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.08)}.message-input{flex:1;padding:.75rem 1rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:24px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit}.message-input:focus{border-color:var(--accent-primary);background:#ffffff14}.message-input-actions{display:flex;gap:.5rem}.input-action-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff0d;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.input-action-btn:hover{background:#ffffff1a;color:var(--text-primary)}.send-btn{width:36px;height:36px;border-radius:50%;border:none;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.send-btn:hover:not(:disabled){background:var(--accent-secondary)}.send-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.chat-content{flex-direction:column;height:auto}.contacts-panel{width:100%;height:300px}.chat-panel{height:500px}}@media(max-width:768px){.chat-container{height:calc(100vh - 150px)}.contacts-panel{height:250px}.chat-panel{height:400px}.message{max-width:85%}.chat-window-header,.message-input-container{padding:.75rem 1rem}}.forum-container{display:flex;flex-direction:column;height:calc(100vh - 200px);animation:fadeIn .5s ease-out}.forum-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.forum-title{display:flex;align-items:center;gap:1rem}.forum-title h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0}.forum-title p{color:var(--text-muted);margin:.25rem 0 0;font-size:.95rem}.forum-stats{display:flex;gap:1rem;align-items:center}.stat-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border-radius:20px;color:var(--text-secondary);font-size:.85rem}.forum-content{display:flex;flex-direction:column;gap:2rem;flex:1}.new-post-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;margin-bottom:1rem}.new-post-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem}.user-info{flex:1}.user-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.user-role{font-size:.8rem;font-weight:500}.new-post-input{display:flex;flex-direction:column;gap:1rem}textarea{width:100%;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#f8fafc;outline:none;transition:all .2s;font-family:inherit;font-size:.95rem;resize:vertical;min-height:80px;line-height:1.4}textarea:focus{border-color:#10b981;background:#ffffff14}textarea::placeholder{color:#64748b}.post-textarea{width:100%;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#f8fafc;outline:none;transition:all .2s;font-family:inherit;font-size:.95rem;resize:vertical;min-height:80px;line-height:1.4}.post-textarea:focus{border-color:#10b981;background:#ffffff14}.post-textarea::placeholder{color:#64748b}.post-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#10b981;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;align-self:flex-end}.post-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.post-btn:disabled{opacity:.5;cursor:not-allowed}.posts-container{flex:1;overflow:hidden}.posts-list{height:100%;overflow-y:auto;padding:0 .5rem;display:flex;flex-direction:column;gap:1.5rem}.empty-forum{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);text-align:center;padding:2rem}.empty-forum svg{margin-bottom:1rem;opacity:.5}.empty-forum h3{margin:0 0 .5rem;color:var(--text-secondary)}.empty-forum p{margin:0;font-size:.9rem}.post-item{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;transition:all .2s;animation:slideIn .3s ease-out}.post-item:hover{background:#ffffff0d;border-color:#ffffff1f}.post-item.own-post{background:#3b82f60d;border-color:#3b82f626}.post-item.own-post:hover{background:#3b82f614;border-color:#3b82f633}.own-indicator{color:#3b82f6;font-weight:600;font-size:.85rem}.post-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.post-author{display:flex;align-items:center;gap:.75rem}.author-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem}.author-info{display:flex;flex-direction:column}.author-name{font-weight:600;color:var(--text-primary);margin-bottom:.2rem}.author-role{font-size:.75rem;font-weight:500}.post-meta{display:flex;align-items:center}.post-timestamp{display:flex;align-items:center;gap:.25rem;color:var(--text-muted);font-size:.8rem}.post-content{margin-bottom:1rem}.post-content p{margin:0;color:var(--text-primary);line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.post-actions{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05)}.like-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:20px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem}.like-btn:hover{background:#ffffff1a;color:var(--text-primary)}.like-btn.liked{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.like-icon{font-size:1rem}.like-count{font-weight:600;min-width:20px;text-align:center}.reply-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:20px;color:#3b82f6;cursor:pointer;transition:all .2s;font-size:.85rem}.reply-btn:hover{background:#3b82f633;border-color:#3b82f666;color:#2563eb}.replies-section{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.replies-header{margin-bottom:1rem}.replies-count{font-size:.85rem;color:var(--text-muted);font-weight:500}.replies-list{display:flex;flex-direction:column;gap:1rem}.reply-item{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1rem;margin-left:1rem;position:relative}.reply-item.own-reply{background:#3b82f608;border-color:#3b82f61a}.reply-item:before{content:"";position:absolute;left:-8px;top:1rem;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:8px solid rgba(255,255,255,.05)}.reply-item.own-reply:before{border-right-color:#3b82f61a}.reply-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.reply-author{display:flex;align-items:center;gap:.5rem}.reply-author .author-avatar{width:28px;height:28px;font-size:.8rem}.reply-author .author-name{font-size:.9rem}.reply-author .author-role{font-size:.7rem}.reply-timestamp{display:flex;align-items:center;gap:.25rem;color:var(--text-muted);font-size:.75rem}.reply-content{margin-bottom:.75rem}.reply-content p{margin:0;color:var(--text-primary);line-height:1.4;font-size:.95rem}.reply-actions{display:flex;align-items:center;gap:.5rem}.reply-actions .like-btn{padding:.25rem .75rem;font-size:.8rem}.reply-form{margin-top:1rem;padding:1rem;background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:12px;animation:slideIn .3s ease-out}.reply-form-header{margin-bottom:.75rem}.replying-to{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#3b82f61a;border-radius:8px}.replying-to span{font-size:.85rem;color:#3b82f6;font-weight:500}.cancel-reply-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s}.cancel-reply-btn:hover{background:#ffffff1a;color:var(--text-primary)}.message-input-container{display:flex;gap:1rem;align-items:flex-end}.message-textarea{flex:1;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--text-primary);outline:none;transition:all .2s;font-family:inherit;font-size:1rem;resize:none;min-height:80px;max-height:120px;line-height:1.5}.message-textarea:focus{border-color:#3b82f666;background:#ffffff14}.message-textarea::placeholder{color:var(--text-muted)}.submit-btn{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.reply-submit-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.85rem}.submit-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.private-user-filter{margin-bottom:1.5rem;padding:0 .5rem}.user-dropdown{position:relative;width:100%;max-width:400px}.dropdown-trigger{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--text-primary);cursor:pointer;transition:all .2s;font-size:.9rem;font-weight:500}.dropdown-trigger:hover{background:#ffffff14;border-color:#ffffff26}.dropdown-trigger.open{background:#3b82f61a;border-color:#3b82f64d;color:#3b82f6}.dropdown-trigger span{flex:1;text-align:left}.chevron{transition:transform .2s ease;color:var(--text-muted)}.chevron.rotated{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:#1e293bf2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 25px #0000004d;z-index:1000;max-height:300px;overflow-y:auto}.dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem;text-align:left}.dropdown-item:hover{background:#ffffff0d;color:var(--text-primary)}.dropdown-item.active{background:#3b82f61a;color:#3b82f6}.dropdown-user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.7rem;flex-shrink:0}.dropdown-user-info{display:flex;flex-direction:column;gap:.1rem;flex:1}.dropdown-user-name{font-weight:600;color:inherit}.dropdown-user-role{font-size:.7rem;color:var(--text-muted)}.dropdown-item.active .dropdown-user-role{color:#3b82f6cc}.forum-tabs{display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:0;border-bottom:2px solid rgba(255,255,255,.1)}.forum-tab{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:transparent;border:none;border-radius:12px 12px 0 0;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;position:relative;font-weight:500}.forum-tab:hover{background:#ffffff0d;color:var(--text-primary)}.forum-tab.active{background:#ffffff14;color:var(--text-primary);border-bottom:2px solid #10b981}.forum-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#10b981}.tab-content{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.tab-title{font-size:.95rem;font-weight:600}.tab-count{font-size:.75rem;color:var(--text-muted)}.forum-tab.active .tab-count{color:#10b981}.message-type-toggle{display:flex;gap:.5rem;margin-left:auto}.message-type-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem}.message-type-btn:hover{background:#ffffff1a;color:var(--text-primary)}.message-type-btn.active{background:#10b981;border-color:#10b981;color:#fff}.recipient-selector{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;margin-bottom:1rem;animation:slideIn .3s ease-out}.recipient-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.recipient-selector-header h4{margin:0;color:var(--text-primary);font-size:1rem}.cancel-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s}.cancel-btn:hover{background:#ffffff1a;color:var(--text-primary)}.recipient-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto}.recipient-item{padding:.5rem;border-radius:8px;transition:background .2s}.recipient-item:hover{background:#ffffff0d}.recipient-checkbox{display:flex;align-items:center;gap:.75rem;cursor:pointer;width:100%}.recipient-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#10b981}.recipient-info{display:flex;align-items:center;gap:.75rem;flex:1}.recipient-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.8rem}.recipient-details{flex:1}.recipient-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.recipient-role{font-size:.75rem;color:var(--text-muted)}.recipient-selector-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.selected-count{color:var(--text-muted);font-size:.85rem}.confirm-recipients-btn{padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-recipients-btn:hover:not(:disabled){background:#059669}.confirm-recipients-btn:disabled{opacity:.5;cursor:not-allowed}.private-post{background:#3b82f60d;border-color:#3b82f626}.private-post:hover{background:#3b82f614;border-color:#3b82f633}.private-indicator{display:flex;align-items:center;gap:.25rem;color:#3b82f6;font-size:.75rem;font-weight:500}.delete-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:20px;color:#ef4444;cursor:pointer;transition:all .2s;font-size:.8rem;margin-left:auto}.delete-btn:hover{background:#ef444433;border-color:#ef44444d;color:#dc2626;transform:scale(1.05)}.delete-btn svg{color:inherit}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.forum-container{height:calc(100vh - 150px)}.forum-header{flex-direction:column;align-items:flex-start;gap:1rem}.forum-title h1{font-size:1.5rem}}@media(max-width:768px){.forum-container{height:calc(100vh - 120px)}.new-post-section,.post-item{padding:1rem}.post-header{flex-direction:column;align-items:flex-start;gap:.5rem}.post-timestamp{font-size:.75rem}.post-textarea{font-size:.9rem}.post-btn{width:100%;justify-content:center}}.posts-list::-webkit-scrollbar{width:6px}.posts-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.posts-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.posts-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.profile-container{display:flex;flex-direction:column;gap:2.5rem;animation:fadeIn .5s ease-out;padding:2rem;max-width:1200px;margin:0 auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-header{text-align:center;margin-bottom:1rem}.profile-header h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;font-family:var(--font-heading)}.profile-header p{color:var(--text-secondary);font-size:1.1rem}.profile-content{display:flex;flex-direction:column;gap:1.5rem}.profile-card{background:#1e293bb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:24px;padding:2rem;position:relative;overflow:hidden}.profile-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary))}.profile-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow);transition:var(--transition-normal)}.profile-unified-content{display:grid;grid-template-columns:250px 1fr;gap:3rem;align-items:start}.profile-image-section{display:flex;flex-direction:column;align-items:center;text-align:center}.profile-image-container{position:relative;width:180px;height:180px;border-radius:50%;overflow:hidden;border:4px solid var(--accent-primary);transition:all .3s ease;box-shadow:0 0 20px #10b9814d}.profile-image-container.editable{cursor:pointer}.profile-image-container.editable:hover{border-color:var(--accent-secondary);transform:scale(1.05);box-shadow:0 0 30px #10b98180}.profile-image{width:100%;height:100%;object-fit:cover}.image-overlay{position:absolute;inset:0;background:#0f172acc;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .3s ease}.profile-image-container.editable:hover .image-overlay{opacity:1}.image-overlay span{margin-top:.5rem;font-size:.9rem;font-weight:500}.image-hint{margin-top:1rem;color:var(--text-secondary);font-size:.9rem;font-style:italic}.profile-info-section{flex:1}.info-group{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.info-item{display:flex;flex-direction:column;gap:.75rem}.info-label{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--text-primary);font-size:.95rem;font-family:var(--font-heading)}.info-label svg{color:var(--accent-primary)}.info-value{padding:1rem;background:#33415580;border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);font-size:1rem;transition:var(--transition-fast)}.info-input{padding:1rem;background:#33415580;border:2px solid var(--border-color);border-radius:12px;font-size:1rem;transition:var(--transition-fast);color:var(--text-primary);font-family:var(--font-main)}.info-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);background:#334155cc}.info-input::placeholder{color:var(--text-muted)}.profile-actions{display:flex;justify-content:flex-start;padding-top:1.5rem;border-top:1px solid var(--border-color)}.action-buttons{display:flex;gap:1rem}.btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition-normal);font-size:.95rem;font-family:var(--font-main)}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-success{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-success:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:#334155cc;transform:translateY(-2px)}.profile-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#3341554d;border-radius:12px;transition:var(--transition-fast)}.stat-item:hover{background:#33415580}.stat-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.stat-value{font-weight:600;color:var(--text-primary);font-size:.95rem}.stat-value.status.active{color:var(--accent-primary)}.stat-value.status.inactive{color:#ef4444}@media(max-width:768px){.profile-container{padding:1rem}.profile-header h1{font-size:1.75rem}.profile-unified-content{grid-template-columns:1fr;gap:2rem}.profile-image-container{width:150px;height:150px}.action-buttons{flex-direction:column}.btn{justify-content:center}.profile-stats{grid-template-columns:1fr}}@media(max-width:480px){.profile-container{padding:.5rem}.profile-card{padding:1.5rem}.profile-image-container{width:120px;height:120px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-container{animation:fadeIn .5s ease-out}.profile-container.loading{opacity:.6;pointer-events:none}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1rem}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:1rem;border-radius:8px;margin-bottom:1rem}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.notification-toast{background:#1f2937;border:1px solid #374151;border-radius:12px;box-shadow:0 10px 40px #0006;min-width:350px;max-width:450px;opacity:0;transform:translate(100%);transition:all .3s cubic-bezier(.68,-.55,.265,1.55);pointer-events:auto;overflow:hidden}.notification-toast.visible{opacity:1;transform:translate(0)}.notification-toast.closing{opacity:0;transform:translate(100%)}.toast-content{display:flex;align-items:flex-start;gap:12px;padding:16px;position:relative}.toast-icon-wrapper{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff1a}.toast-icon.success{color:#22c55e}.toast-icon.warning{color:#f97316}.toast-icon.error{color:#ef4444}.toast-icon.info{color:#3b82f6}.toast-text{flex:1;min-width:0}.toast-title{color:#fff;font-size:15px;font-weight:600;margin:0 0 4px;line-height:1.3}.toast-message{color:#9ca3af;font-size:13px;margin:0;line-height:1.4}.toast-close-btn{position:absolute;top:12px;right:12px;background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toast-close-btn:hover{background:#ffffff1a;color:#fff}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a;overflow:hidden}.toast-progress-bar{height:100%;background:#3b82f6;width:100%;transform:translate(-100%);animation:progress-countdown linear}@keyframes progress-countdown{0%{transform:translate(-100%)}to{transform:translate(0)}}@media(max-width:768px){.toast-container{top:10px;right:10px;left:10px}.notification-toast{min-width:auto;max-width:none;width:100%}}.notification-toast[data-type=success]{border-left:4px solid #22c55e}.notification-toast[data-type=warning]{border-left:4px solid #f97316}.notification-toast[data-type=error]{border-left:4px solid #ef4444}.notification-toast[data-type=info]{border-left:4px solid #3b82f6}
