.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background:var(--bg-page);position:relative}.auth-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;width:100%;max-width:440px;box-shadow:var(--shadow-md);animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-toolbar{position:absolute;top:16px;right:16px;z-index:5}.auth-header{text-align:center;margin-bottom:1.5rem}.auth-header .auth-logo{height:52px;width:auto;display:block;margin:0 auto .75rem;filter:none}.auth-header h1{color:var(--primary-color);font-size:1.5rem;font-weight:600;margin-bottom:.25rem;text-shadow:none}.auth-header h2{color:var(--text-dark);font-size:1.25rem;font-weight:600;margin-bottom:.4rem}.auth-header p{color:var(--text-light);font-size:.875rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-group input,.form-group select{padding:.3125rem .75rem;height:32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;font-family:inherit;transition:var(--transition);background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--text-dark);box-shadow:var(--shadow-sm)}.form-group input::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--bg-card)}.password-input-group{position:relative}.password-input-group input{padding-right:3rem}.password-toggle-btn{position:absolute;right:8px;top:60%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:.4rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.password-toggle-btn:hover{color:var(--text-dark)}.password-toggle-btn:disabled{cursor:not-allowed;opacity:.5}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-subtle)}.auth-button{padding:.3125rem 1rem;height:32px;background:var(--success-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition);margin-top:.25rem;box-shadow:none;letter-spacing:0}.auth-button:hover:not(:disabled){background:#1a7f37;opacity:.9;transform:none;box-shadow:none}.auth-button:active:not(:disabled){opacity:.8}.auth-button:disabled{background:var(--bg-inset);color:var(--text-muted);border:1px solid var(--border-color);cursor:not-allowed;box-shadow:none}.auth-footer{margin-top:1.5rem;text-align:center;color:var(--text-light);font-size:.8125rem;padding-top:1rem;border-top:1px solid var(--border-color)}.auth-footer a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:var(--transition)}.auth-footer a:hover{color:var(--primary-dark);text-decoration:underline;filter:none}.forgot-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:.8125rem;font-family:inherit;text-decoration:none;transition:var(--transition);padding:0}.forgot-link:hover{color:var(--primary-dark);text-decoration:underline;filter:none}[data-theme=dark] .auth-container{background:var(--bg-page)}[data-theme=dark] .auth-card{background:var(--bg-card);border-color:var(--border-color);box-shadow:var(--shadow-md)}[data-theme=dark] .auth-header h1{color:var(--primary-color)}[data-theme=dark] .auth-header h2{color:var(--text-dark)}[data-theme=dark] .auth-header p{color:var(--text-light)}[data-theme=dark] .form-group label{color:var(--text-dark)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .form-group input::placeholder{color:var(--text-muted)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--bg-inset)}[data-theme=dark] .auth-button{background:var(--success-color);color:#fff}[data-theme=dark] .auth-button:hover:not(:disabled){opacity:.9}[data-theme=dark] .auth-button:disabled{background:var(--bg-inset);color:var(--text-muted);border-color:var(--border-color)}[data-theme=dark] .auth-footer{color:var(--text-light);border-top-color:var(--border-color)}[data-theme=dark] .auth-footer a{color:var(--primary-color)}[data-theme=dark] .auth-footer a:hover{color:var(--primary-dark)}@media (max-width: 640px){.auth-container{padding:1rem}.auth-card{padding:1.5rem 1.25rem}.auth-toolbar{top:10px;right:10px}.auth-header h1{font-size:1.25rem}.auth-header h2{font-size:1.125rem}.auth-header .auth-logo{height:44px}}.welcome-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-color) 50%,#ec4899 100%);transition:opacity .6s ease}.welcome-overlay--enter,.welcome-overlay--stay{opacity:1;pointer-events:all}.welcome-overlay--exit{opacity:0;pointer-events:none}.welcome-card{position:relative;text-align:center;color:#fff;padding:48px 56px;overflow:hidden;transform:scale(1);transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.welcome-card--enter{animation:welcomePop .7s cubic-bezier(.34,1.56,.64,1) forwards}.welcome-card--exit{transform:scale(.85);opacity:0;transition:transform .5s ease,opacity .5s ease}@keyframes welcomePop{0%{transform:scale(.4) translateY(60px);opacity:0}70%{transform:scale(1.05) translateY(-6px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.welcome-panda{font-size:5rem;line-height:1;margin-bottom:16px;animation:pandaBounce 1.4s ease infinite;display:block}@keyframes pandaBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.welcome-greeting{font-size:1.1rem;font-weight:500;opacity:.85;margin:0 0 6px;letter-spacing:.05em;text-transform:uppercase}.welcome-company{font-size:3rem;font-weight:600;margin:0 0 16px;line-height:1.15;text-shadow:0 4px 20px rgba(0,0,0,.25)}.welcome-username{font-size:1.15rem;opacity:.9;margin:0}.welcome-hint{margin-top:32px;font-size:.8rem;opacity:.55;letter-spacing:.04em}.welcome-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;width:8px;height:14px;border-radius:2px;top:-20px;left:calc(var(--i) * 5.8%);background:hsl(calc(var(--i) * 20),90%,65%);animation:confettiFall calc(2s + var(--i) * .1s) ease-in calc(var(--i) * .15s) infinite;opacity:.8}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}80%{opacity:.7}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-container{background:#fff;width:460px;padding:30px 25px 25px;border-radius:10px;box-shadow:0 10px 30px #0003;position:relative}.modal-close{position:absolute;top:10px;right:12px;background:none;border:none;font-size:18px;cursor:pointer;color:#6b7280}.modal-close:hover{color:#ef4444}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px}.modal-title{font-size:22px;font-weight:600;color:#2563eb;margin:0;flex:1;text-align:left;word-break:break-word}.hr-badge{background:#2563eb;color:#fff;padding:4px 10px;border-radius:20px;font-size:12px;white-space:nowrap;flex-shrink:0}.modal-description{color:#3a4455;font-size:15px;line-height:1.6;margin-bottom:14px}.policy-details{font-size:14px;color:#394350;margin-bottom:20px}.document-buttons{display:flex;gap:12px}.open-btn{background:#3b82f6;color:#fff;padding:7px 14px;border-radius:6px;text-decoration:none;font-size:14px}.open-btn:hover{background:#2563eb}.download-btn{background:#10b981;color:#fff;padding:7px 14px;border-radius:6px;text-decoration:none;font-size:14px}.download-btn:hover{background:#059669}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000}.policy-form-modal{background:#fff;padding:25px;border-radius:12px;width:400px;max-width:90%;box-shadow:0 12px 30px #00000040;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.policy-form-modal h2{text-align:center;margin-bottom:15px;color:#2563eb}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:14px;margin-bottom:5px;font-weight:500}.form-group select{width:100%;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);font-size:14px}.form-group input,.form-group textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #d1d5db;outline:none;font-size:14px}.form-group textarea{resize:none}.form-group input:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.form-buttons{display:flex;gap:12px;margin-top:15px}.form-buttons button{flex:1;padding:10px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:.3s}.create-btn{background:#16a34a;color:#fff}.create-btn:hover{background:#15803d;transform:translateY(-1px)}.cancel-btn{background:#ef4444;color:#fff}.cancel-btn:hover{background:#dc2626;transform:translateY(-1px)}[data-theme=dark] .policy-form-modal{background:#1f2937;color:#fff}[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea{background:#111827;border-color:#374151;color:#fff}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa4d}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:none;-webkit-backdrop-filter:none}.confirm-dialog{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);width:360px;max-width:92%;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-xl);text-align:center;animation:dialogFade .25s ease}@keyframes dialogFade{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.confirm-dialog h3{margin-bottom:.625rem;font-size:1.2rem;font-weight:600;color:var(--text-dark);letter-spacing:-.01em}.confirm-dialog p{color:var(--text-light);font-size:.9rem;margin-bottom:1.5rem;line-height:1.5}.confirm-buttons{display:flex;justify-content:center;gap:.75rem}.yes-btn{background:#ef4444d9;color:#fff;border:1px solid rgba(239,68,68,.4);padding:.65rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:700;font-size:.9rem;font-family:inherit;transition:var(--transition);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);box-shadow:0 4px 12px -4px var(--danger-glow)}.yes-btn:hover{background:var(--danger-color);box-shadow:0 8px 20px -6px var(--danger-glow)}.no-btn{background:var(--glass-bg);color:var(--text-light);border:1px solid var(--glass-border);padding:.65rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;font-size:.9rem;font-family:inherit;transition:var(--transition);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.no-btn:hover{background:var(--glass-bg-strong);color:var(--text-dark);border-color:var(--glass-border)}.policies-page{padding:25px;background:var(--bg-page)}.policies-header{margin-bottom:25px}.header-left{display:flex;align-items:center;gap:15px}.policies-page h2{font-size:26px;font-weight:600;color:#2563eb}.policy-subtitle{font-size:15px;color:#e61414;margin-top:5px}.policy-card h3{font-size:18px;font-weight:600;color:#096af1;margin-bottom:6px}.create-btn{background:#1a1888;color:#fff;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:.3s;font-weight:155px}.create-btn:hover{background:#43b06b}.policy-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.policy-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 3px 8px #00000014;display:flex;flex-direction:column;justify-content:space-between;height:220px;transition:.3s;border:1px solid #e5e7eb}.policy-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001f}.policy-card h3{font-size:18px;margin-bottom:5px}.policy-card p{color:#6b7280}.policy-date{font-size:13px;color:#9ca3af}.policy-actions{display:flex;gap:10px;margin-top:auto}.view-btn{background:#2563eb;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer}.view-btn:hover{background:#1d4ed8}.edit-btn{background:#f59e0b;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer}.edit-btn:hover{background:#d97706}.remove-btn{background:#ef4444;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer}.remove-btn:hover{background:#dc2626}body.dark .policy-card{background:#1f2937;border-color:#374151}body.dark .policy-card h3{color:#fff}body.dark .policy-card p{color:#d1d5db}body.dark .policy-date{color:#9ca3af}[data-theme=dark] .policies-page{background:linear-gradient(90deg,#0f172a,#1e293b,#0f172a)}[data-theme=dark] .policies-page h2{color:#fff}[data-theme=dark] .policy-subtitle{color:#f87171}.er-container{padding:1.5rem;max-width:900px;margin:0 auto}.er-header{margin-bottom:1.5rem}.er-title{display:flex;align-items:center;gap:10px;font-size:1.125rem;font-weight:600;color:var(--text-dark);margin:0 0 4px}.er-subtitle{color:var(--text-muted);font-size:.9rem;margin:0}.er-tabs{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.er-tab-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-light);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.er-tab-btn:hover{border-color:var(--glass-border);color:var(--text-dark)}.er-tab-btn.active{border-color:var(--primary-color);background:linear-gradient(135deg,#eef2ff,#e0e7ff);color:var(--primary-color)}.er-form{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.5rem;box-shadow:0 2px 8px var(--primary-glow);display:flex;flex-direction:column;gap:16px}.er-form-row{display:flex;flex-direction:column;gap:6px}.er-form-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--text-dark)}.er-form-row input,.er-form-row select,.er-form-row textarea{padding:10px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-dark);background:var(--glass-bg);transition:border-color .2s ease;font-family:inherit}.er-form-row input:focus,.er-form-row select:focus,.er-form-row textarea:focus{outline:none;border-color:var(--primary-color);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.er-form-row input[type=file]{padding:8px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.er-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary-color),var(--primary-color));color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s ease;align-self:flex-start}.er-submit-btn:hover:not(:disabled){box-shadow:0 4px 12px var(--primary-glow)}.er-submit-btn:disabled{opacity:.6;cursor:not-allowed}.er-loading,.er-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:4rem 2rem;color:#cbd5e1;font-size:.95rem}.er-list{display:flex;flex-direction:column;gap:14px}.er-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.25rem;transition:all .2s ease;box-shadow:0 2px 8px var(--primary-glow)}.er-card:hover{border-color:var(--glass-border);box-shadow:0 8px 20px var(--primary-glow)}.er-card-actionable{border-left:4px solid var(--primary-color)}.er-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.er-card-info{display:flex;align-items:center;gap:12px}.er-card-user{display:flex;align-items:center;gap:10px}.er-user-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),#a855f7);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0}.er-user-name{font-weight:700;font-size:.95rem;color:var(--text-dark)}.er-user-dept{font-size:.8rem;color:var(--text-muted);font-weight:500}.er-status-badge{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:4px 12px;border-radius:var(--radius-md)}.er-pending{background:linear-gradient(135deg,#fff7ed,#fed7aa);color:#c2410c}.er-approved{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:var(--success-color)}.er-rejected{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:var(--danger-color)}.er-paid{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:var(--primary-color)}.er-category-badge{font-size:.78rem;font-weight:600;padding:3px 10px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);color:#0284c7}.er-amount{font-weight:600;font-size:1.05rem;color:var(--text-dark)}.er-card-details{display:flex;align-items:center;gap:14px;margin-bottom:8px;flex-wrap:wrap}.er-date{display:flex;align-items:center;gap:5px;font-size:.85rem;color:var(--text-light);font-weight:500}.er-card-meta{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-light);margin-bottom:8px}.er-card-desc{font-size:.85rem;color:var(--text-light);line-height:1.5;margin-bottom:8px}.er-receipt-link{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;font-weight:600;color:var(--primary-color);text-decoration:none;margin-bottom:8px}.er-receipt-link:hover{text-decoration:underline}.er-rejection-note{background:#ef444414;border:1px solid #fee2e2;border-radius:var(--radius-sm);padding:8px 12px;font-size:.82rem;color:var(--danger-color);margin-top:8px}.er-payslip-tag{display:inline-block;font-size:.78rem;font-weight:600;color:var(--success-color);background:#10b98114;padding:3px 10px;border-radius:var(--radius-sm);margin-top:8px}.er-review-filters{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.er-filter-btn{padding:6px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-light);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.er-filter-btn:hover{border-color:var(--glass-border);color:var(--text-dark)}.er-filter-btn.active{border-color:var(--primary-color);background:linear-gradient(135deg,#eef2ff,#e0e7ff);color:var(--primary-color)}.er-actions{margin-top:12px;border-top:1px solid #f1f5f9;padding-top:12px}.er-action-btns{display:flex;gap:8px;margin-top:8px}.er-approve-btn,.er-reject-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s ease}.er-approve-btn{background:linear-gradient(135deg,#059669,#10b981);color:#fff}.er-approve-btn:hover:not(:disabled){box-shadow:0 2px 8px #0596694d}.er-reject-btn{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff}.er-reject-btn:hover:not(:disabled){box-shadow:0 2px 8px #dc26264d}.er-approve-btn:disabled,.er-reject-btn:disabled{opacity:.6;cursor:not-allowed}.er-paid-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:linear-gradient(135deg,#1d4ed8,#3b82f6);color:#fff}.er-paid-btn:hover:not(:disabled){box-shadow:0 2px 8px #1d4ed859}.er-paid-btn:disabled{opacity:.6;cursor:not-allowed}.er-paid-note{display:flex;align-items:center;gap:6px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-sm);padding:8px 12px;font-size:.82rem;color:var(--primary-color);margin-top:8px}.er-reject-input{display:flex;align-items:center;gap:8px;background:#ef444414;border:1px solid #fee2e2;border-radius:var(--radius-sm);padding:8px 12px;color:var(--danger-color)}.er-reject-input input{flex:1;border:none;background:transparent;outline:none;font-size:.85rem;color:var(--danger-color);font-family:inherit}.er-reject-input input::placeholder{color:#fca5a5}[data-theme=dark] .er-container{color:#e2e8f0}[data-theme=dark] .er-title{color:#f1f5f9}[data-theme=dark] .er-subtitle{color:var(--text-light)}[data-theme=dark] .er-card{background:#1e293b;border-color:var(--text-dark)}[data-theme=dark] .er-card:hover{border-color:var(--text-dark);box-shadow:0 4px 12px #0003}[data-theme=dark] .er-form{background:#1e293b;border-color:var(--text-dark)}[data-theme=dark] .er-form-row label{color:var(--text-muted)}[data-theme=dark] .er-form-row input,[data-theme=dark] .er-form-row select,[data-theme=dark] .er-form-row textarea{background:#0f172a;border-color:var(--text-dark);color:#e2e8f0}[data-theme=dark] .er-form-row input:focus,[data-theme=dark] .er-form-row select:focus,[data-theme=dark] .er-form-row textarea:focus{background:#1e293b}[data-theme=dark] .er-user-name,[data-theme=dark] .er-amount{color:#f1f5f9}[data-theme=dark] .er-card-meta,[data-theme=dark] .er-card-desc{color:var(--text-muted)}[data-theme=dark] .er-tab-btn{background:#1e293b;border-color:var(--text-dark);color:var(--text-muted)}[data-theme=dark] .er-tab-btn:hover{border-color:var(--text-dark);color:#e2e8f0}[data-theme=dark] .er-filter-btn{background:#1e293b;border-color:var(--text-dark);color:var(--text-muted)}[data-theme=dark] .er-filter-btn:hover{border-color:var(--text-dark);color:#e2e8f0}[data-theme=dark] .er-rejection-note{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}[data-theme=dark] .er-reject-input{background:#450a0a;border-color:#7f1d1d}[data-theme=dark] .er-reject-input input{color:#fca5a5}.att-cal-wrap{width:100%}.att-cal-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:10px}.att-cal-nav__btn{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:4px 8px;cursor:pointer;color:var(--text-dark);display:flex;align-items:center;transition:background .15s}.att-cal-nav__btn:hover:not(:disabled){background:var(--glass-bg)}.att-cal-nav__btn:disabled{opacity:.3;cursor:default}.att-cal-nav__label{font-size:.9rem;font-weight:700;color:var(--text-dark);min-width:160px;text-align:center}.att-cal-stats{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:12px;font-size:.8rem;color:var(--text-light);flex-wrap:wrap}.att-cal-stat strong{color:var(--text-dark);font-weight:700}.att-cal-stat-sep{color:var(--border-color)}.att-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.att-cal-dow{text-align:center;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light);padding:3px 0 5px}.att-cal-cell{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:default;border:1px solid transparent;transition:transform .12s,box-shadow .12s;font-size:.72rem}.att-cal-cell:not(.att-cal-empty):not(.att-future):hover{transform:scale(1.15);box-shadow:0 4px 12px #0000002e;z-index:2}.att-cal-empty{background:none;border:none}.att-cal-day-num{font-size:.78rem;font-weight:700;line-height:1}.att-cal-hrs{font-size:.58rem;font-weight:600;opacity:.85;line-height:1}.att-present{background:#10b9811f;border-color:#6ee7b7;color:var(--success-color)}.att-absent{background:#ef44441f;border-color:#fca5a5;color:var(--danger-color)}.att-overtime{background:#3b82f61f;border-color:#93c5fd;color:var(--primary-color)}.att-weekend{background:var(--surface-2, #f8fafc);border-color:var(--glass-border);color:var(--text-light);opacity:.55}.att-future{background:var(--surface-2, #f8fafc);border-color:var(--glass-border);color:var(--text-light);opacity:.3}.att-cal-legend{display:flex;align-items:center;gap:12px;margin-top:10px;font-size:.7rem;color:var(--text-light);flex-wrap:wrap;justify-content:center}.att-legend-dot{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:3px;vertical-align:middle}.att-cal-loading{text-align:center;padding:32px 0;color:var(--text-light);font-size:.85rem}.profile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;align-items:center;justify-content:center;z-index:9999;animation:profileOverlayIn .25s ease-out;padding:2rem}@keyframes profileOverlayIn{0%{opacity:0}to{opacity:1}}.profile-modal{background:var(--glass-bg-strong);border-radius:var(--radius-md);width:100%;max-width:700px;max-height:90vh;overflow:hidden;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;position:relative;animation:profileModalIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes profileModalIn{0%{opacity:0;transform:scale(.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.profile-close-btn{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;border:none;background:var(--glass-bg-strong);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.profile-close-btn:hover{background:var(--glass-bg-subtle);color:var(--text-dark);transform:rotate(90deg)}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;color:var(--text-muted)}.profile-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:var(--primary-color);border-radius:50%;animation:spin .7s linear infinite}.profile-error{text-align:center;padding:4rem 2rem;color:var(--danger-color)}.profile-error button{margin-top:1rem;padding:.5rem 1.25rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500}.profile-header{position:relative;padding-bottom:1.5rem}.profile-header-bg{height:120px;background:linear-gradient(135deg,var(--primary-color) 0%,#a855f7 100%);position:relative;overflow:hidden}.profile-header-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.1) 0%,transparent 50%)}.profile-header-bg:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:30px;background:var(--glass-bg-strong);border-radius:var(--radius-md) 20px 0 0}.profile-avatar-section{display:flex;align-items:flex-end;gap:1.25rem;padding:0 2rem;margin-top:-44px;position:relative;z-index:2}.profile-avatar-wrapper{position:relative;flex-shrink:0}.profile-avatar{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),#a855f7);display:flex;align-items:center;justify-content:center;border:4px solid var(--glass-bg-strong);box-shadow:0 4px 14px var(--primary-glow);position:relative;overflow:hidden}.profile-avatar span:first-child{color:#fff;font-size:1.6rem;font-weight:700;letter-spacing:1px}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-status-dot{position:absolute;bottom:4px;right:4px;width:16px;height:16px;border-radius:50%;border:3px solid var(--glass-bg-strong);box-shadow:0 2px 4px #00000026;z-index:2}.avatar-edit-btn{position:absolute;bottom:0;right:-2px;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-color));border:2px solid var(--glass-bg-strong);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:all .2s ease;box-shadow:0 2px 6px var(--primary-glow)}.avatar-edit-btn:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 10px #0969da1a}.avatar-edit-btn:disabled{opacity:.7;cursor:wait}.avatar-edit-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.avatar-remove-btn{position:absolute;top:-2px;right:-6px;width:24px;height:24px;border-radius:50%;background:var(--danger-color);border:2px solid var(--glass-bg-strong);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:all .2s ease;box-shadow:0 2px 6px #ef444466;opacity:0}.profile-avatar-wrapper:hover .avatar-remove-btn{opacity:1}.avatar-remove-btn:hover:not(:disabled){transform:scale(1.1);background:var(--danger-color)}.profile-name-section{padding-bottom:.5rem}.profile-name-section h2{font-size:1.125rem;font-weight:700;color:var(--text-dark);margin:0;line-height:1.3}.profile-role-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 12px;border-radius:var(--radius-md);font-size:.78rem;font-weight:600;letter-spacing:.3px;margin-top:4px}.role-admin{background:linear-gradient(135deg,#fef3c7,#fde68a);color:var(--warning-color)}.role-hr{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.role-manager{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.role-employee{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:var(--primary-dark)}.profile-tabs{display:flex;border-bottom:1px solid var(--glass-border-subtle);padding:0 2rem;gap:0}.profile-tab{display:flex;align-items:center;gap:6px;padding:.85rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;color:var(--text-muted);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.profile-tab:hover{color:var(--primary-color);background:#0969da1a}.profile-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.profile-body{padding:1.25rem 2rem 2rem}.status-changer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.status-chip{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg-strong);font-size:.8rem;font-weight:600;color:var(--text-dark);cursor:pointer;transition:all .2s ease}.status-chip:hover:not(:disabled){border-color:var(--chip-color);background:#00000005}.status-chip-active{border-color:var(--chip-color)!important;background:#00000008!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--chip-color) 15%,transparent)}.status-chip:disabled{opacity:.6;cursor:wait}.status-chip-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:1.75rem}.profile-info-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);transition:all .2s ease}.profile-info-card:hover{background:var(--glass-bg-subtle);border-color:var(--glass-border);box-shadow:0 2px 8px #0000000a}.info-card-icon{width:38px;height:38px;border-radius:var(--radius-sm);background:#0969da14;color:var(--primary-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-card-content{display:flex;flex-direction:column;min-width:0}.info-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:2px}.info-value{font-size:.92rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-green{color:var(--success-color)!important}.text-red{color:var(--danger-color)!important}.profile-section{margin-bottom:1.5rem}.profile-section-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:var(--text-dark);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--glass-border-subtle)}.attendance-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.attendance-stat-card{text-align:center;padding:1.25rem .75rem;border-radius:var(--radius-sm);transition:transform .2s ease}.stat-hours{background:#0969da14;border:1px solid rgba(9,105,218,.12)}.stat-days{background:#10b9811f;border:1px solid rgba(16,185,129,.25)}.stat-sessions{background:#f59e0b1f;border:1px solid rgba(245,158,11,.25)}.stat-total{background:#ef444414;border:1px solid rgba(239,68,68,.2)}.stat-number{font-size:1.35rem;font-weight:600;margin-bottom:4px}.stat-hours .stat-number{color:var(--primary-color)}.stat-days .stat-number{color:var(--success-color)}.stat-sessions .stat-number{color:#ea580c}.stat-total .stat-number{color:#db2777}.stat-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-light)}.att-calendar{margin-top:20px}.att-calendar__month{font-size:.9rem;font-weight:700;color:var(--text-dark);margin-bottom:10px;text-align:center;letter-spacing:.02em}.att-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.att-calendar__dow{text-align:center;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light);padding:4px 0}.att-calendar__cell{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:default;transition:transform .15s,box-shadow .15s;font-size:.75rem;border:1px solid transparent}.att-calendar__cell:not(.att-calendar__cell--empty):not(.att-future):hover{transform:scale(1.12);box-shadow:0 4px 12px #00000026;z-index:2}.att-calendar__cell--empty{background:none;border:none}.att-calendar__day-num{font-size:.8rem;font-weight:700;line-height:1}.att-calendar__hours{font-size:.6rem;font-weight:600;opacity:.85;line-height:1}.att-present{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.att-absent{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.att-overtime{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.att-weekend{background:var(--surface-2, #f8fafc);border-color:var(--border-color);color:var(--text-light);opacity:.6}.att-future{background:var(--surface-2, #f8fafc);border-color:var(--border-color);color:var(--text-light);opacity:.35}.att-today{outline:2px solid var(--primary-color);outline-offset:1px}.att-calendar__legend{display:flex;align-items:center;gap:14px;margin-top:12px;font-size:.72rem;color:var(--text-light);flex-wrap:wrap}.att-legend-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px}.att-legend-dot.att-present{background:#6ee7b7}.att-legend-dot.att-absent{background:#fca5a5}.att-legend-dot.att-overtime{background:#93c5fd}.att-legend-dot.att-weekend{background:#d1d5db}[data-theme=dark] .att-present{background:#34d39926;border-color:#34d39959;color:#34d399}[data-theme=dark] .att-absent{background:#f8717126;border-color:#f8717159;color:var(--danger-color)}[data-theme=dark] .att-overtime{background:#60a5fa26;border-color:#60a5fa59;color:#60a5fa}[data-theme=dark] .att-legend-dot.att-present{background:#34d399}[data-theme=dark] .att-legend-dot.att-absent{background:var(--danger-color)}[data-theme=dark] .att-legend-dot.att-overtime{background:#60a5fa}.today-sessions-list{display:flex;flex-direction:column;gap:8px}.session-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);transition:all .2s ease}.session-row:hover{background:var(--glass-bg-subtle)}.session-time{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500}.session-clock-in{color:var(--success-color);font-weight:600}.session-separator{color:#cbd5e1;font-size:.85rem}.session-clock-out{color:var(--danger-color);font-weight:600}.session-active-badge{display:inline-flex;align-items:center;padding:2px 10px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-radius:var(--radius-md);font-size:.75rem;font-weight:700;animation:activePulse 2s ease-in-out infinite}@keyframes activePulse{0%,to{opacity:1}50%{opacity:.7}}.session-status-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.session-status-indicator.active{background:var(--success-color);box-shadow:0 0 0 3px #10b98133}.session-status-indicator.ended{background:var(--glass-bg-subtle)}.profile-section-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.profile-section-toggle:hover{color:var(--primary-color)}.toggle-chevron{margin-left:auto;font-size:1.1rem;transition:transform .3s ease;color:var(--text-muted)}.toggle-chevron.open{transform:rotate(180deg)}.password-form{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;animation:pwFormIn .3s ease-out}@keyframes pwFormIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.pw-message{padding:10px 14px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:8px}.pw-message-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:var(--danger-color);border:1px solid #fecaca}.pw-message-success{background:#10b9811f;color:var(--success-color);border:1px solid rgba(16,185,129,.25)}.pw-field{display:flex;flex-direction:column;gap:6px}.pw-field label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-light)}.pw-input-wrapper{position:relative;display:flex;align-items:center}.pw-input-wrapper input{width:100%;padding:11px 44px 11px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;color:var(--text-dark);background:var(--glass-bg-strong);transition:all .2s ease;outline:none}.pw-input-wrapper input::placeholder{color:#cbd5e1;font-weight:400}.pw-input-wrapper input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.pw-toggle-btn{position:absolute;right:8px;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .15s ease}.pw-toggle-btn:hover{color:var(--text-light);background:var(--glass-bg-subtle)}.pw-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,var(--primary-color),var(--primary-color));color:#fff;border:none;border-radius:var(--radius-sm);font-size:.92rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.25rem}.pw-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark),var(--primary-dark));box-shadow:0 4px 12px #0969da1a}.pw-submit-btn:active:not(:disabled){transform:translateY(0)}.pw-submit-btn:disabled{opacity:.7;cursor:not-allowed}.pw-btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.leave-form{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;animation:pwFormIn .3s ease-out}.leave-form-row{display:flex;gap:12px}.leave-form-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.leave-select,.leave-date-input{width:100%;padding:11px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;color:var(--text-dark);background:var(--glass-bg-strong);transition:all .2s ease;outline:none;font-family:inherit}.leave-select:focus,.leave-date-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.leave-textarea{width:100%;padding:11px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;color:var(--text-dark);background:var(--glass-bg-strong);transition:all .2s ease;outline:none;font-family:inherit;resize:vertical;min-height:70px}.leave-textarea::placeholder{color:#cbd5e1;font-weight:400}.leave-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.leave-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:2.5rem 1rem;color:#cbd5e1;font-size:.92rem}.leave-list{display:flex;flex-direction:column;gap:10px}.leave-card{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);padding:14px 16px;transition:all .2s ease}.leave-card:hover{background:var(--glass-bg-subtle);border-color:var(--glass-border)}.leave-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.leave-type-badge{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--text-dark);background:var(--glass-bg-subtle);padding:3px 10px;border-radius:var(--radius-sm)}.leave-status-badge{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:3px 10px;border-radius:var(--radius-md)}.leave-pending{background:#f59e0b1f;color:#c2410c}.leave-approved{background:#10b9811f;color:var(--success-color)}.leave-rejected{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:var(--danger-color)}.leave-card-dates{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:var(--text-dark);margin-bottom:6px}.leave-card-reason{font-size:.85rem;color:var(--text-light);line-height:1.5;margin:0 0 6px}.leave-cancel-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:transparent;border:1.5px solid #fca5a5;border-radius:var(--radius-sm);color:var(--danger-color);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.leave-cancel-btn:hover{background:#ef444414;border-color:var(--danger-color)}.leave-review-note{margin-top:6px;padding:8px 12px;background:var(--glass-bg-strong);border-radius:var(--radius-sm);border:1px solid var(--glass-border);font-size:.82rem;color:var(--text-dark)}.payslip-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.payslip-summary-item{text-align:center;padding:6px;background:var(--glass-bg-strong);border-radius:var(--radius-sm)}.payslip-summary-label{display:block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted)}.payslip-summary-value{display:block;font-size:.95rem;font-weight:600;color:var(--text-dark)}.payslip-line-items{border-top:1px solid #e2e8f0;padding-top:8px;margin-bottom:8px}.payslip-line-item{display:flex;justify-content:space-between;padding:4px 0;font-size:.82rem;color:var(--text-dark)}.payslip-earning{color:var(--success-color);font-weight:600}.payslip-deduction{color:var(--danger-color);font-weight:600}.payslip-net-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:var(--radius-sm);margin-top:4px;font-weight:700;font-size:.9rem;color:#166534}.payslip-net-amount{font-size:1.05rem;font-weight:900;color:#15803d}.profile-modal::-webkit-scrollbar{width:6px}.profile-modal::-webkit-scrollbar-track{background:transparent}.profile-modal::-webkit-scrollbar-thumb{background:var(--glass-bg-subtle);border-radius:3px}.profile-modal::-webkit-scrollbar-thumb:hover{background:var(--glass-bg-subtle)}@media (max-width: 640px){.profile-overlay{padding:1rem}.profile-modal{max-height:95vh;border-radius:var(--radius-sm)}.profile-avatar-section{padding:0 1.25rem}.profile-body{padding:.75rem 1.25rem 1.5rem}.profile-tabs{padding:0 1.25rem}.profile-info-grid{grid-template-columns:1fr}.attendance-stats-grid,.status-changer-grid{grid-template-columns:1fr 1fr}.leave-form-dates{grid-template-columns:1fr}.profile-avatar{width:72px;height:72px}.profile-avatar span:first-child{font-size:1.3rem}.profile-name-section h2{font-size:1.25rem}.password-form,.leave-form{padding:1rem}}.approval-timeline{margin:10px 0 8px;padding:12px 14px;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm)}.approval-timeline-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-bottom:10px}.approval-step{display:flex;gap:10px;padding:8px 0;position:relative}.approval-step:not(:last-child){border-bottom:1px dashed #f1f5f9}.approval-step-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;flex-shrink:0}.approval-step-pending .approval-step-icon{background:#fff7ed;color:var(--warning-color);border:2px solid #fed7aa}.approval-step-approved .approval-step-icon{background:#ecfdf5;color:var(--success-color);border:2px solid #a7f3d0}.approval-step-rejected .approval-step-icon{background:#ef444414;color:var(--danger-color);border:2px solid #fecaca}.approval-step-content{flex:1;min-width:0}.approval-step-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.approval-step-name{font-weight:700;font-size:.85rem;color:var(--text-dark)}.approval-step-label{font-size:.72rem;color:var(--text-muted);font-weight:500}.approval-step-status{display:flex;align-items:center;gap:8px;margin-top:3px}.approval-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:2px 8px;border-radius:var(--radius-sm)}.approval-badge-pending{background:#fff7ed;color:#c2410c}.approval-badge-approved{background:#ecfdf5;color:var(--success-color)}.approval-badge-rejected{background:#ef444414;color:var(--danger-color)}.approval-step-date{font-size:.72rem;color:var(--text-muted);font-weight:500}.approval-step-comment{margin-top:4px;font-size:.8rem;color:var(--text-light);font-style:italic;padding-left:2px}[data-theme=dark] .profile-modal{background:var(--surface);border:1px solid var(--border-color)}[data-theme=dark] .profile-close-btn{background:var(--surface-2);color:var(--text-light)}[data-theme=dark] .profile-close-btn:hover{background:var(--border-color);color:var(--text-dark)}[data-theme=dark] .profile-header-bg:after{background:var(--surface)}[data-theme=dark] .profile-name-section h2{color:var(--text-dark)}[data-theme=dark] .profile-tabs{border-bottom-color:var(--border-color)}[data-theme=dark] .profile-tab{color:var(--text-light)}[data-theme=dark] .profile-tab:hover{background:var(--surface-2)}[data-theme=dark] .profile-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}[data-theme=dark] .status-chip{background:var(--surface);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .status-chip:hover:not(:disabled){background:var(--surface-2)}[data-theme=dark] .profile-info-card{background:var(--surface-2);border-color:var(--border-color)}[data-theme=dark] .info-label{color:var(--text-light)}[data-theme=dark] .info-value{color:var(--text-dark)}[data-theme=dark] .profile-section-title{border-bottom-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .session-row{background:var(--surface-2);border-color:var(--border-color)}[data-theme=dark] .session-separator{color:var(--text-light)}[data-theme=dark] .password-form{background:var(--surface-2);border-color:var(--border-color)}[data-theme=dark] .pw-field label{color:var(--text-light)}[data-theme=dark] .pw-input-wrapper input{background:var(--surface);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .pw-input-wrapper input::placeholder{color:var(--text-light)}[data-theme=dark] .pw-input-wrapper input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #8b9eff33}[data-theme=dark] .pw-toggle-btn:hover{background:var(--surface-2);color:var(--text-dark)}[data-theme=dark] .leave-form{background:var(--surface-2);border-color:var(--border-color)}[data-theme=dark] .leave-select,[data-theme=dark] .leave-date-input,[data-theme=dark] .leave-textarea{background:var(--surface);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .leave-textarea::placeholder{color:var(--text-light)}[data-theme=dark] .leave-select:focus,[data-theme=dark] .leave-date-input:focus,[data-theme=dark] .leave-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #8b9eff33}[data-theme=dark] .leave-empty{color:var(--text-light)}[data-theme=dark] .leave-card{background:var(--surface-2);border-color:var(--border-color)}[data-theme=dark] .leave-card:hover{background:var(--surface);border-color:var(--text-light)}[data-theme=dark] .leave-type-badge{background:var(--border-color);color:var(--text-dark)}[data-theme=dark] .leave-card-dates{color:var(--text-dark)}[data-theme=dark] .leave-card-reason{color:var(--text-light)}[data-theme=dark] .leave-cancel-btn{border-color:#ef444466;color:var(--danger-color)}[data-theme=dark] .leave-cancel-btn:hover{background:#ef44441a;border-color:var(--danger-color)}[data-theme=dark] .leave-review-note{background:var(--surface);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .approval-timeline{background:var(--surface);border-color:var(--border-color)}[data-theme=dark] .approval-timeline-title{color:var(--text-light)}[data-theme=dark] .approval-step:not(:last-child){border-bottom-color:var(--border-color)}[data-theme=dark] .approval-step-name{color:var(--text-dark)}[data-theme=dark] .approval-step-label{color:var(--text-light)}[data-theme=dark] .approval-step-pending .approval-step-icon{background:#f59e0b1a;color:#fbbf24;border-color:#f59e0b66}[data-theme=dark] .approval-step-approved .approval-step-icon{background:#10b9811a;color:#34d399;border-color:#10b98166}[data-theme=dark] .approval-step-rejected .approval-step-icon{background:#ef44441a;color:var(--danger-color);border-color:#ef444466}[data-theme=dark] .approval-badge-pending{background:#f59e0b26;color:var(--warning-color)}[data-theme=dark] .approval-badge-approved{background:#10b98126;color:var(--success-color)}[data-theme=dark] .approval-badge-rejected{background:#ef444426;color:var(--danger-color)}[data-theme=dark] .profile-avatar{border-color:var(--surface)}.navbar{background:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:none;position:sticky;top:0;z-index:100}.navbar-container{max-width:1600px;margin:0 auto;padding:0 1.5rem;height:56px;display:flex;justify-content:space-between;align-items:center}.navbar-brand{display:flex;align-items:center;gap:8px}.navbar-brand h2{color:var(--text-dark);font-size:1rem;font-weight:600;margin:0;letter-spacing:-.01em}.navbar-user{display:flex;align-items:center;gap:.75rem}.user-info{display:flex;align-items:center;gap:.5rem;color:var(--text-dark);font-weight:500;font-size:.875rem}.user-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}.user-avatar--placeholder{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-dark);background:var(--bg-inset);border:1px solid var(--border-color);width:28px;height:28px;border-radius:50%}.user-info-clickable{cursor:pointer;padding:.3rem .6rem;border-radius:var(--radius-sm);transition:var(--transition);border:1px solid transparent}.user-info-clickable:hover{background:var(--bg-subtle);border-color:var(--border-color);color:var(--primary-color)}.logout-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .9rem;background:transparent;color:var(--danger-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;cursor:pointer;transition:var(--transition)}.logout-btn:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.attendance-controls{display:flex;align-items:center;gap:10px}.clock-toggle{--toggle-w: 69px;--toggle-h: 36px;--thumb: 28px;--x: 33px;position:relative;display:inline-block;width:var(--toggle-w);height:var(--toggle-h);cursor:pointer;-webkit-user-select:none;user-select:none}.clock-toggle input{position:absolute;opacity:0;width:0;height:0}.clock-toggle__track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#fff0f0;border:2px solid #ff4d4d;transition:all .3s cubic-bezier(.4,0,.2,1)}.clock-toggle.on .clock-toggle__track{background:#f0fff4;border-color:#2ecc71}.clock-toggle__thumb{position:absolute;top:50%;left:4px;width:var(--thumb);height:var(--thumb);border-radius:50%;background:#fff;border:2px solid #ff4d4d;box-shadow:0 2px 4px #ff4d4d33;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:#ff4d4d}.clock-toggle.on .clock-toggle__thumb{transform:translate(var(--x),-50%);border-color:#2ecc71;color:#2ecc71;box-shadow:0 2px 4px #2ecc714d}[data-theme=dark] .clock-toggle__track{background:#ff4d4d1a;border-color:#ff5f5f}[data-theme=dark] .clock-toggle__thumb{background:#1a1a1a;color:#ff5f5f;border-color:#ff5f5f;box-shadow:0 0 8px #ff5f5f66}[data-theme=dark] .clock-toggle.on .clock-toggle__track{background:#2ecc711a;border-color:#2eff8c}[data-theme=dark] .clock-toggle.on .clock-toggle__thumb{color:#2eff8c;border-color:#2eff8c;box-shadow:0 0 8px #2eff8c66}.attendance-info{display:flex;flex-direction:column;line-height:1.2}.attendance-status{font-size:13px;font-weight:700}.status-in{color:#2ecc71!important}.status-out{color:#ff4d4d!important}.status-idle{color:var(--text-muted)}[data-theme=dark] .status-in{color:#2eff8c!important}[data-theme=dark] .status-out{color:#ff5f5f!important}.attendance-meta{font-size:.72rem;color:var(--text-muted)}.navbar-icon-btn{position:relative;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;cursor:pointer;color:var(--text-light);padding:6px;border-radius:var(--radius-sm);transition:var(--transition)}.navbar-icon-btn:hover{background:var(--bg-subtle);border-color:var(--border-color);color:var(--text-dark)}.navbar-badge{position:absolute;top:-4px;right:-4px;background:#ff4d4d;color:#fff;border-radius:99px;font-size:.6rem;font-weight:700;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:2px solid var(--bg-card)}@media (max-width: 768px){.navbar-container{padding:0 1rem}.user-info span,.logout-btn span{display:none}}.split-subtask-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-light, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);padding:4px 6px;border-radius:4px;cursor:pointer;color:var(--primary-color, var(--primary-color));transition:all .2s ease}.split-subtask-btn:hover:not(:disabled){background:var(--primary-color, var(--primary-color));color:#fff;border-color:var(--primary-color, var(--primary-color));transform:scale(1.05)}.split-subtask-btn:disabled{cursor:not-allowed;opacity:.4;background:#e5e7eb;color:var(--text-muted)}.subtask-item-with-actions{display:flex;align-items:center;gap:8px;width:100%}.subtask-item-with-actions .subtask-content{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.subtask-item-with-actions .subtask-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtask-item-with-actions .subtask-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.subtask-item.subtask-item-with-actions{justify-content:space-between}.subtask-item.subtask-item-with-actions .subtask-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card{background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.75rem;transition:var(--transition);animation:slideIn .2s ease-out;-webkit-user-select:none;user-select:none;cursor:grab;box-shadow:var(--shadow-sm)}@keyframes slideIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.task-card:active{cursor:grabbing}.task-card:hover{box-shadow:var(--shadow-md);transform:none;border-color:var(--primary-color);background:var(--bg-card)}.task-card.due-overdue{border-left:3px solid var(--danger-color);background:#cf222e0a}.task-card.due-due-today{border-left:3px solid var(--warning-color);background:#9a67000a}.task-card.due-future{border-left:3px solid var(--success-color);background:#1a7f370a}.task-delay-tag{padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:500;background:#cf222e1a;color:var(--danger-color);border:1px solid rgba(207,34,46,.2)}.task-tags{display:flex;gap:.3rem;align-items:center;flex-wrap:wrap}.task-project-tag{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .4rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:500;background:#0969da14;color:var(--primary-color);border:1px solid rgba(9,105,218,.2);white-space:nowrap;max-width:110px;overflow:hidden;text-overflow:ellipsis}.task-card.dragging{opacity:.85;transform:rotate(1deg) scale(1.01);box-shadow:var(--shadow-lg);cursor:grabbing!important}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.task-header-actions{display:flex;align-items:center;gap:.2rem}.task-card.collapsed{padding:.5rem .75rem}.task-card.collapsed .task-card-header{margin-bottom:.3rem}.task-card.collapsed .task-title{margin-bottom:.2rem;font-size:.875rem}.task-collapsed-content{display:flex;flex-direction:column;gap:.2rem}.task-collapsed-info{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:var(--text-light)}.collapsed-assignee,.collapsed-deadline{display:flex;align-items:center;gap:.2rem}.expand-btn{color:var(--text-muted)}.expand-btn:hover{color:var(--primary-color);background:var(--bg-subtle)}.task-urgency{padding:.1rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:500;letter-spacing:0;border:1px solid transparent}.task-urgency:hover{opacity:.85}.urgency-critical{background:#cf222e1a;color:var(--danger-color);border-color:#cf222e33}.urgency-high{background:#9a67001a;color:var(--warning-color);border-color:#9a670033}.urgency-medium{background:#0969da14;color:var(--primary-color);border-color:#0969da33}.urgency-low{background:#6639ba14;color:var(--secondary-color);border-color:#6639ba33}.urgency-minimal{background:var(--bg-subtle);color:var(--text-muted);border-color:var(--border-subtle)}.task-actions{display:flex;gap:.25rem}.action-btn{padding:.25rem;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.action-btn:hover{background:var(--bg-subtle);transform:none}.edit-btn:hover{color:var(--primary-color)}.delete-btn:hover{color:var(--danger-color)}.task-title{font-size:.875rem;font-weight:600;color:var(--text-dark);margin-bottom:.375rem;line-height:1.4;word-wrap:break-word;letter-spacing:0}.task-description{color:var(--text-light);font-size:.8125rem;line-height:1.5;margin-bottom:.625rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.task-subtasks{margin-bottom:.625rem;padding:.5rem .625rem;background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.subtasks-summary{font-size:.75rem;color:var(--text-light);font-weight:600;margin-bottom:.3rem}.subtasks-list{display:flex;flex-direction:column;gap:.25rem}.subtask-item{display:flex;align-items:flex-start;gap:.4rem;font-size:.8125rem;color:var(--text-dark);line-height:1.4}.subtask-bullet{color:var(--primary-color);font-weight:700;font-size:1rem;line-height:1;margin-top:-1px}.subtask-item span{flex:1}.subtask-item input[type=checkbox]{cursor:pointer;margin-top:2px}.subtask-item span.completed{text-decoration:line-through;color:var(--text-muted)}.pending-indicator{margin-left:6px;color:var(--warning-color);font-size:.875rem}.radio-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border:2px solid var(--border-color);border-radius:50%;display:inline-block;margin-top:2px;margin-right:5px;position:relative;cursor:pointer;transition:var(--transition)}.radio-toggle:checked{border-color:var(--primary-color)}.radio-toggle:checked:after{content:"";position:absolute;top:50%;left:50%;width:6px;height:6px;transform:translate(-50%,-50%);background:var(--primary-color);border-radius:50%;box-shadow:none}.subtasks-more{background:transparent;border:none;color:var(--primary-color);cursor:pointer;padding:0;font-size:.75rem;font-style:italic;padding-left:1.25rem}.subtasks-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#01040980;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;align-items:center;justify-content:center;z-index:1000}.subtasks-modal{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border-color);width:420px;max-width:90vw;border-radius:var(--radius-md);box-shadow:var(--shadow-xl)}.subtasks-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.subtasks-modal-body{padding:.75rem 1rem;max-height:60vh;overflow-y:auto}.close-btn{background:transparent;border:none;font-size:1rem;cursor:pointer;color:var(--text-muted);transition:var(--transition);border-radius:var(--radius-sm);padding:.25rem}.close-btn:hover{color:var(--danger-color);background:var(--bg-subtle)}.task-approved-badge{display:inline-flex;align-items:center;gap:3px;font-size:.6875rem;padding:.1rem .5rem;border-radius:999px;font-weight:500;background:#1a7f371a;color:var(--success-color);border:1px solid rgba(26,127,55,.2)}.task-footer{display:flex;flex-wrap:wrap;gap:.4rem;padding-top:.5rem;border-top:1px solid var(--border-subtle);font-size:.75rem}.task-deadline,.task-assigned,.task-owner-info{display:flex;align-items:center;gap:.25rem;color:var(--text-light)}.task-owner-info{margin-left:auto;color:var(--warning-color);font-weight:500}@media (max-width: 768px){.task-card{padding:.625rem}.task-title{font-size:.875rem}.task-description{font-size:.8125rem}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#01040980;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease-out;backdrop-filter:none;-webkit-backdrop-filter:none}.modal-content{background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideIn .2s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-subtle);backdrop-filter:none;-webkit-backdrop-filter:none;z-index:10;border-radius:var(--radius-md) var(--radius-md) 0 0}.modal-header h2{font-size:1rem;font-weight:600;color:var(--text-dark);margin:0;letter-spacing:0}.close-btn{padding:.25rem .5rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:center;font-size:1rem}.close-btn:hover{background:var(--bg-inset);color:var(--danger-color)}.task-form{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-weight:600;color:var(--text-dark);font-size:.8125rem;letter-spacing:0}.form-group input,.form-group textarea,.form-group select{padding:.3rem .75rem;min-height:50px;line-height:1.4;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;font-family:inherit;transition:var(--transition);background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--text-dark);box-shadow:var(--shadow-sm)}.form-group textarea{height:auto;padding:.5rem .75rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--bg-card)}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-subtle)}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.add-subtask-btn{padding:0 .75rem;height:32px;background:#1a7f371a;color:var(--success-color);border:1px solid rgba(26,127,55,.2);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:none;backdrop-filter:none}.add-subtask-btn:hover:not(:disabled){background:var(--success-color);color:#fff;border-color:var(--success-color)}.subtasks-list{display:flex;flex-direction:column;gap:.375rem;margin-top:.5rem;padding:.625rem;background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.subtask-item{display:flex;justify-content:space-between;align-items:center;padding:.375rem .625rem;background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);-webkit-backdrop-filter:none;backdrop-filter:none}.subtask-item span{flex:1;color:var(--text-dark);font-size:.875rem}.remove-subtask-btn{padding:.25rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:center}.remove-subtask-btn:hover:not(:disabled){background:#cf222e1a;color:var(--danger-color)}.assignees-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.5rem;padding:.625rem;background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.assignee-checkbox{display:flex;align-items:center;gap:.4rem;padding:.375rem .5rem;background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);transition:var(--transition);cursor:pointer;-webkit-backdrop-filter:none;backdrop-filter:none}.assignee-checkbox:hover{border-color:var(--primary-color);background:var(--bg-card);box-shadow:none}.assignee-checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--primary-color)}.assignee-checkbox label{cursor:pointer;font-size:.8125rem;color:var(--text-dark);display:flex;align-items:center;gap:.3rem;margin:0;flex:1;font-weight:400}.status-badge{font-size:.6875rem;padding:.1rem .5rem;border-radius:999px;font-weight:500;letter-spacing:0}.status-badge.working{background:#1a7f371a;color:var(--success-color);border:1px solid rgba(26,127,55,.2)}.status-badge.on-break{background:#9a67001a;color:var(--warning-color);border:1px solid rgba(154,103,0,.2)}.status-badge.busy{background:#cf222e1a;color:var(--danger-color);border:1px solid rgba(207,34,46,.2)}.status-badge.not-available{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-subtle)}.modal-actions{display:flex;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.cancel-btn,.submit-btn{flex:1;padding:.3125rem 1rem;height:32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition)}.cancel-btn{background:var(--bg-card);color:var(--text-dark);-webkit-backdrop-filter:none;backdrop-filter:none}.cancel-btn:hover:not(:disabled){background:var(--bg-subtle);color:var(--text-dark);border-color:var(--border-color)}.submit-btn{background:var(--success-color);color:#fff;border-color:var(--success-color);box-shadow:none}.submit-btn:hover:not(:disabled){background:#1a7f37;border-color:#1a7f37;transform:none;box-shadow:none}.submit-btn:active:not(:disabled){opacity:.85}@media (max-width: 640px){.modal-content{max-width:100%;max-height:100vh;border-radius:var(--radius-md) var(--radius-md) 0 0;align-self:flex-end}.modal-header,.task-form{padding:1rem}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}}.notes-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:none;backdrop-filter:none;animation:notesFadeIn .2s ease-out}@keyframes notesFadeIn{0%{opacity:0}to{opacity:1}}@keyframes notesSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notes-modal-content{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:notesSlideIn .3s ease-out;color:var(--text-dark)}.notes-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--glass-border);position:sticky;top:0;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);z-index:10}.notes-modal-header h2{font-size:1.125rem;font-weight:700;color:var(--text-dark);margin:0}.notes-close-btn{padding:.5rem;background:transparent;border:none;color:var(--text-light);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:center}.notes-close-btn:hover{background:var(--glass-bg);color:var(--text-dark)}.notes-modal-body{padding:1.5rem 2rem}.notes-input-section{margin-bottom:1rem}.notes-textarea{width:100%;min-height:100px;padding:.75rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-dark);font-size:.95rem;resize:vertical;box-sizing:border-box}.notes-textarea:focus{outline:none;border-color:var(--primary-color)}.notes-modal-body .create-task-btn{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.notes-modal-body .create-task-btn:hover{background:var(--primary-dark)}.notes-divider{border:none;border-top:1px solid var(--glass-border);margin:1rem 0}.notes-list{list-style:none;padding:0;margin:0}.notes-list-item{padding:.75rem 0;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:flex-start}.notes-list-item:last-child{border-bottom:none}.notes-modal-body .kanban-action-btn{background:transparent;border:1px solid transparent;color:var(--text-light);padding:.35rem;border-radius:var(--radius-sm);cursor:pointer}.notes-modal-body .kanban-action-btn:hover{background:#0000000f}.notes-empty-state{color:var(--text-light);padding:2rem;text-align:center;font-style:italic}.notes-type-toggle{display:flex;gap:6px;margin-bottom:10px}.notes-type-btn{display:inline-flex;align-items:center;gap:5px;padding:.35rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:transparent;color:var(--text-light);font-size:.85rem;cursor:pointer;transition:all .15s}.notes-type-btn:hover{background:var(--glass-bg);color:var(--text-dark)}.notes-type-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.notes-checklist-editor{display:flex;flex-direction:column;gap:6px;padding:.75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg)}.notes-checklist-row{display:flex;align-items:center;gap:8px}.notes-cb{width:16px;height:16px;flex-shrink:0;accent-color:var(--primary-color);cursor:pointer}.notes-item-input{flex:1;border:none;background:transparent;color:var(--text-dark);font-size:.9rem;padding:.25rem 0;outline:none;border-bottom:1px solid transparent}.notes-item-input:focus{border-bottom-color:var(--primary-color)}.notes-item-input::placeholder{color:var(--text-light)}.notes-remove-item-btn{background:transparent;border:none;color:var(--text-light);cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center}.notes-remove-item-btn:hover{color:var(--danger-color)}.notes-add-item-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--primary-color);font-size:.85rem;cursor:pointer;padding:2px 0;margin-top:2px}.notes-add-item-btn:hover{text-decoration:underline}.notes-saved-checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}.notes-saved-checklist-item{display:flex;align-items:center;gap:8px;font-size:.9rem}.notes-item-done{text-decoration:line-through;color:var(--text-light)}[data-theme=dark] .notes-modal-content{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);color:var(--text-dark)}[data-theme=dark] .notes-modal-header{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom-color:var(--border-color)}[data-theme=dark] .notes-modal-header h2,[data-theme=dark] .notes-modal-body h4{color:var(--text-dark)}[data-theme=dark] .notes-textarea{background:var(--glass-bg);color:var(--text-dark);border-color:var(--glass-border)}[data-theme=dark] .notes-list-item{border-bottom-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .notes-divider{border-top-color:var(--border-color)}[data-theme=dark] .notes-type-btn{border-color:var(--glass-border);color:var(--text-light)}[data-theme=dark] .notes-type-btn:hover{background:var(--glass-bg);color:var(--text-dark)}[data-theme=dark] .notes-type-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}[data-theme=dark] .notes-checklist-editor{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .notes-item-input{color:var(--text-dark)}[data-theme=dark] .notes-empty-state{color:var(--text-light)}.th-modal{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:24px;width:100%;max-width:720px;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);animation:slideIn .3s ease-out;overflow:hidden}.th-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;border-bottom:1px solid var(--glass-border);background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.th-header-left{display:flex;align-items:center;gap:.6rem;color:var(--primary-color)}.th-header-left h2{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin:0}.th-subtitle{margin:0;font-size:.78rem;color:var(--text-light);max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-body{flex:1;overflow-y:auto;padding:1.25rem 1.75rem 1.75rem;background:transparent}.th-loading,.th-empty{text-align:center;padding:3rem 1rem;color:var(--text-light);font-size:.88rem}.th-error{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:var(--danger-color);border-radius:var(--radius-sm);padding:.65rem 1rem;margin-bottom:1rem;font-size:.82rem}.th-legend{font-size:.78rem;color:var(--text-light);margin:0 0 1.25rem;padding:.6rem .85rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.th-timeline{position:relative;padding-left:28px}.th-timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--glass-border);border-radius:2px}.th-entry{position:relative;margin-bottom:6px}.th-entry:before{content:"";position:absolute;left:-23px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--glass-border);border:2px solid var(--glass-bg-strong);z-index:1;box-shadow:0 0 0 2px var(--glass-border)}.th-entry--current:before{background:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color),0 0 8px var(--primary-glow)}.th-entry--rollback:before{background:var(--warning-color);box-shadow:0 0 0 2px var(--warning-color)}.th-card{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);overflow:hidden;transition:var(--transition);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.th-card:hover{box-shadow:none;border-color:var(--glass-border)}.th-entry--current .th-card{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color),0 4px 16px -4px var(--primary-glow)}.th-card-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;cursor:pointer;gap:.5rem;transition:background .15s ease}.th-card-header:hover{background:var(--glass-bg-strong)}.th-card-left{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;min-width:0}.th-card-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.th-version{font-weight:700;font-size:.82rem;color:var(--text-dark);white-space:nowrap}.th-badge{font-size:.65rem;font-weight:600;padding:.12rem .45rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.badge-created{background:#10b98126;color:var(--success-color);border:1px solid rgba(16,185,129,.25)}.badge-updated{background:#7c3aed1f;color:var(--primary-color);border:1px solid rgba(124,58,237,.2)}.badge-rollback{background:#f59e0b26;color:var(--warning-color);border:1px solid rgba(245,158,11,.25)}.th-current-label{font-size:.65rem;font-weight:700;padding:.12rem .45rem;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;white-space:nowrap;box-shadow:none}.th-summary{font-size:.8rem;color:var(--text-light);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.th-meta{display:flex;align-items:center;gap:.25rem;font-size:.72rem;color:var(--text-light);white-space:nowrap}.th-rollback-btn{display:flex;align-items:center;gap:.3rem;padding:.3rem .6rem;border:1px solid var(--primary-color);border-radius:var(--radius-sm);background:#0969da0f;color:var(--primary-color);font-size:.72rem;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap;-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.th-rollback-btn:hover:not(:disabled){background:var(--primary-color);color:#fff;box-shadow:none}.th-rollback-btn:disabled{opacity:.45;cursor:not-allowed}.th-rollback-btn--loading{background:var(--primary-color);color:#fff;opacity:.8}.th-snapshot{padding:.75rem .85rem .85rem;border-top:1px solid var(--glass-border-subtle);background:var(--glass-bg-subtle)}.th-snapshot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.65rem}.th-snap-item{display:flex;flex-direction:column;gap:.1rem}.th-snap-item--full{grid-column:1 / -1}.th-snap-label{font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.th-snap-value{font-size:.82rem;color:var(--text-dark);font-weight:500;word-break:break-word}.th-subtask-list{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.2rem}.th-subtask{font-size:.72rem;padding:.15rem .45rem;border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border-subtle);color:var(--text-dark)}.th-subtask--done{text-decoration:line-through;color:var(--text-muted);opacity:.7}.th-chevron{color:var(--text-light);transition:transform .2s ease;flex-shrink:0}.th-chevron--open{transform:rotate(180deg)}.th-children{margin-left:20px;padding-left:8px;border-left:2px dashed var(--glass-border)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.modal-content{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:24px;width:100%;max-width:1400px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideIn .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--glass-border);position:sticky;top:0;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);z-index:10;border-radius:24px 24px 0 0}.modal-header h2{font-size:1.4rem;font-weight:800;color:var(--text-dark);margin:0;letter-spacing:-.02em}.close-btn{padding:.5rem;background:transparent;border:none;color:var(--text-light);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.close-btn:hover{background:var(--glass-bg-strong);color:var(--danger-color)}.history-btn{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--text-dark);border:1px solid var(--glass-border);font-size:.8rem;font-weight:600;cursor:pointer;transition:var(--transition);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.history-btn:hover{background:var(--glass-bg-strong);border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 0 8px var(--primary-glow)}.task-form{padding:1.75rem 2rem;display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{font-weight:600;color:var(--text-dark);font-size:.88rem;letter-spacing:.01em}.form-group input,.form-group textarea,.form-group select{padding:.75rem 1rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.95rem;font-family:inherit;transition:var(--transition);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);color:var(--text-dark)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--glass-bg-strong)}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.subtask-input-group{display:flex;gap:.5rem}.subtask-input-group input{flex:1}.add-subtask-btn{padding:.75rem 1rem;background:#10b98133;color:var(--success-color);border:1px solid rgba(16,185,129,.35);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.add-subtask-btn:hover:not(:disabled){background:#10b98159;transform:scale(1.05)}.add-subtask-btn:disabled{opacity:.4;cursor:not-allowed}.subtasks-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding:.875rem;background:var(--glass-bg-subtle);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.subtask-item{display:flex;justify-content:space-between;align-items:center;padding:.55rem .75rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.subtask-item span{flex:1;color:var(--text-dark);font-size:.9rem}.remove-subtask-btn{padding:.35rem;background:transparent;border:none;color:var(--danger-color);cursor:pointer;border-radius:6px;transition:var(--transition);display:flex;align-items:center;justify-content:center}.remove-subtask-btn:hover:not(:disabled){background:#ef444426}.remove-subtask-btn:disabled{opacity:.4;cursor:not-allowed}.assignees-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.625rem;padding:.875rem;background:var(--glass-bg-subtle);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);max-height:250px;overflow-y:auto}.assignee-checkbox{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);transition:var(--transition);cursor:pointer;-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.assignee-checkbox:hover{border-color:var(--primary-color);background:var(--glass-bg-strong);box-shadow:0 0 8px var(--primary-glow)}.assignee-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary-color)}.assignee-checkbox label{cursor:pointer;font-size:.875rem;color:var(--text-dark);display:flex;align-items:center;gap:.4rem;margin:0;flex:1;font-weight:500}.status-badge{font-size:.68rem;padding:.15rem .45rem;border-radius:99px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.status-badge.working{background:#10b98133;color:var(--success-color);border:1px solid rgba(16,185,129,.3)}.status-badge.on-break{background:#f59e0b33;color:var(--warning-color);border:1px solid rgba(245,158,11,.3)}.status-badge.busy{background:#ef444433;color:var(--danger-color);border:1px solid rgba(239,68,68,.3)}.status-badge.not-available{background:var(--glass-bg-subtle);color:var(--text-muted);border:1px solid var(--glass-border-subtle)}.modal-actions{display:flex;gap:.875rem;padding-top:1rem;border-top:1px solid var(--glass-border-subtle)}.cancel-btn,.submit-btn{flex:1;padding:.875rem;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;transition:var(--transition)}.cancel-btn{background:var(--glass-bg);color:var(--text-light);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.cancel-btn:hover:not(:disabled){background:var(--glass-bg-strong);color:var(--text-dark)}.submit-btn{background:var(--primary-color);color:#fff;box-shadow:0 8px 24px -8px var(--primary-glow)}.submit-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 12px 32px -8px var(--primary-glow)}.submit-btn:active:not(:disabled){transform:translateY(0)}.cancel-btn:disabled,.submit-btn:disabled{opacity:.5;cursor:not-allowed}.reviews-comments-container{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.75rem 2rem;background:var(--glass-bg-subtle);border-top:1px solid var(--glass-border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--glass-border-subtle)}.section-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-dark)}.info-badge{font-size:.72rem;padding:.2rem .55rem;background:var(--glass-bg);color:var(--text-light);border:1px solid var(--glass-border-subtle);border-radius:99px;font-weight:600}.comment-count{font-size:.82rem;color:var(--text-light);font-weight:600}.reviews-section{display:flex;flex-direction:column;gap:1rem}.review-status-summary{display:flex;gap:.75rem;padding:.875rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.status-item{flex:1;text-align:center;padding:.625rem;border-radius:var(--radius-sm);background:var(--glass-bg-subtle);border:1px solid var(--glass-border-subtle)}.status-item.approved{background:#10b9811a;border-color:#10b98140}.status-item.pending{background:#f59e0b1a;border-color:#f59e0b40}.status-item.rejected{background:#ef44441a;border-color:#ef444440}.status-count{display:block;font-size:1.4rem;font-weight:700;color:var(--text-dark)}.status-label{display:block;font-size:.7rem;color:var(--text-light);margin-top:.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.reviews-list{display:flex;flex-direction:column;gap:.625rem;max-height:400px;overflow-y:auto;padding-right:.25rem}.review-item{padding:.875rem;background:var(--glass-bg);border-radius:var(--radius-sm);border-left:4px solid var(--glass-border);border:1px solid var(--glass-border-subtle);border-left-width:4px;-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.review-item.status-approved{border-left-color:var(--success-color)}.review-item.status-changes-requested{border-left-color:var(--warning-color)}.review-item.status-rejected{border-left-color:var(--danger-color)}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.625rem}.reviewer-info{display:flex;align-items:center;gap:.625rem}.reviewer-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;box-shadow:0 0 8px var(--primary-glow)}.reviewer-name{font-weight:700;font-size:.875rem;color:var(--text-dark)}.review-time{font-size:.72rem;color:var(--text-light)}.review-status-badge{padding:.25rem .6rem;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.review-status-badge.approved{background:#10b98126;color:var(--success-color);border:1px solid rgba(16,185,129,.3)}.review-status-badge.changes-requested{background:#f59e0b26;color:var(--warning-color);border:1px solid rgba(245,158,11,.3)}.review-status-badge.rejected{background:#ef444426;color:var(--danger-color);border:1px solid rgba(239,68,68,.3)}.review-feedback{font-size:.875rem;color:var(--text-dark);line-height:1.5}.add-review-form{background:var(--glass-bg);padding:.875rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.review-textarea{width:100%;padding:.7rem;box-sizing:border-box;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-family:inherit;font-size:.9rem;resize:vertical;min-height:80px;margin-bottom:.75rem;background:var(--glass-bg-subtle);color:var(--text-dark);transition:var(--transition)}.review-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--glass-bg)}.review-actions-form{display:flex;gap:.5rem}.review-btn{flex:1;padding:.6rem 1rem;border:none;border-radius:var(--radius-sm);font-weight:700;font-size:.82rem;cursor:pointer;transition:var(--transition)}.review-btn.approve{background:#10b981d9;color:#fff;box-shadow:0 4px 12px -4px #10b98180}.review-btn.approve:hover{background:#10b981;transform:translateY(-1px)}.review-btn.request-changes{background:#f59e0bd9;color:#fff;box-shadow:0 4px 12px -4px #f59e0b80}.review-btn.request-changes:hover{background:#f59e0b;transform:translateY(-1px)}.review-btn.reject{background:#ef4444d9;color:#fff;box-shadow:0 4px 12px -4px #ef444480}.review-btn.reject:hover{background:#ef4444;transform:translateY(-1px)}.comments-section{display:flex;flex-direction:column;gap:1rem}.comment-input-wrapper{display:flex;gap:.625rem;background:var(--glass-bg);padding:.875rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.comment-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--secondary-color),var(--primary-color));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0;box-shadow:0 0 8px #10b98166}.comment-input-group{flex:1;display:flex;gap:.5rem}.comment-input{flex:1;padding:.7rem .875rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;font-family:inherit;background:var(--glass-bg-subtle);color:var(--text-dark);transition:var(--transition)}.comment-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow);background:var(--glass-bg)}.comment-input::placeholder{color:var(--text-muted)}.comment-submit-btn{padding:.7rem 1.1rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px -4px var(--primary-glow)}.comment-submit-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.comment-submit-btn:disabled{opacity:.5;cursor:not-allowed}.comments-list{display:flex;flex-direction:column;gap:.625rem;max-height:450px;overflow-y:auto;padding-right:.25rem}.comment-item{display:flex;gap:.625rem;padding:.75rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}.comment-item.system-message{background:var(--glass-bg-subtle);border-left:3px solid var(--glass-border);font-style:italic}.comment-content{flex:1}.comment-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.comment-author{font-weight:700;font-size:.82rem;color:var(--text-dark)}.comment-time{font-size:.72rem;color:var(--text-light)}.comment-text{font-size:.875rem;color:var(--text-dark);line-height:1.5}.empty-state{padding:2rem;text-align:center;color:var(--text-light);font-style:italic;background:var(--glass-bg-subtle);border-radius:var(--radius-sm);border:1px dashed var(--glass-border)}.info-message{padding:.7rem .875rem;background:var(--glass-bg-subtle);border-radius:var(--radius-sm);font-size:.82rem;color:var(--text-muted);text-align:center;font-style:italic;border:1px solid var(--glass-border-subtle)}@media (max-width: 1024px){.reviews-comments-container{grid-template-columns:1fr}}@media (max-width: 640px){.modal-content{max-width:100%;max-height:100vh;border-radius:var(--radius-sm) 16px 0 0;align-self:flex-end}.modal-header,.task-form{padding:1.25rem}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.reviews-comments-container{padding:1.25rem}}.kanban-container{display:flex;flex-direction:column;height:calc(100vh - 120px);animation:fadeIn .3s ease-out}.kanban-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.kanban-header h1{font-size:1.25rem;font-weight:600;color:var(--text-dark);letter-spacing:-.01em}.header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.5rem;padding:.3125rem .75rem;height:32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;min-width:220px;transition:var(--transition);box-shadow:var(--shadow-sm)}.search-box:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.search-box input{flex:1;font-size:.8125rem;font-family:inherit;color:var(--text-dark);border:none;outline:none;background:transparent}.search-box input::placeholder{color:var(--text-muted)}.urgency-filter{display:flex;align-items:center;gap:.4rem}.urgency-filter label{font-size:.8125rem;font-weight:500;color:var(--text-dark);white-space:nowrap}.filter-select{padding:0 .75rem;height:32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;font-family:inherit;background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text-dark);cursor:pointer;transition:var(--transition);min-width:150px;box-shadow:var(--shadow-sm)}.filter-select:hover{border-color:var(--primary-color)}.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.create-task-btn{display:flex;align-items:center;gap:.4rem;padding:0 1rem;height:32px;background:var(--success-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition);box-shadow:none;letter-spacing:0}.create-task-btn:hover{background:#1a7f37;transform:none;box-shadow:none;opacity:.9}.create-task-btn:active{opacity:.8}.kanban-action-btn{display:flex;align-items:center;gap:.4rem;padding:0 1rem;height:32px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition);background:var(--bg-card);color:var(--text-dark)}.kanban-action-btn:hover{background:var(--bg-subtle);border-color:var(--primary-color)}.trash-btn{background:var(--bg-card);color:var(--danger-color);border-color:var(--border-color);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.trash-btn:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.review-action-btn{background:var(--bg-card);color:var(--success-color);border-color:var(--border-color);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.review-action-btn:hover{background:var(--success-color);color:#fff;border-color:var(--success-color)}.notes-btn{background:var(--bg-card);color:var(--primary-color);border-color:var(--border-color);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.notes-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.messaging-btn{background:var(--bg-card);color:var(--secondary-color);border-color:var(--border-color);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.messaging-btn:hover{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.kanban-columns{display:grid;grid-template-columns:repeat(3,minmax(380px,1fr));gap:1rem;flex:1;overflow-x:auto;padding-bottom:1rem}.kanban-column{display:flex;flex-direction:column;background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);min-width:320px}.column-header{padding:.75rem 1rem;background:var(--bg-subtle);border-top:3px solid;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.column-header h2{font-size:.8125rem;font-weight:600;color:var(--text-dark);margin:0;letter-spacing:0}.task-count{background:var(--bg-inset);color:var(--text-light);padding:.1rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--border-subtle)}.column-content{flex:1;padding:.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;background:var(--bg-page);transition:var(--transition)}.column-content.dragging-over{background:var(--primary-glow)}.empty-column{display:flex;justify-content:center;align-items:center;padding:2rem;color:var(--text-muted);font-style:italic;font-size:.8125rem}@media (max-width: 1400px){.kanban-columns{grid-template-columns:repeat(2,minmax(320px,1fr))}}@media (max-width: 768px){.kanban-header{flex-direction:column;gap:.75rem;align-items:flex-start}.kanban-header h1{font-size:1.125rem}.header-actions{width:100%;flex-direction:column}.urgency-filter{width:100%;flex-direction:column;align-items:flex-start}.filter-select{width:100%}.kanban-columns{grid-template-columns:1fr}.kanban-column{min-width:auto}.create-task-btn{width:100%;justify-content:center}}.reports-container{padding:2rem;max-width:1600px;margin:0 auto}.reports-header{margin-bottom:2rem}.reports-header h1{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;color:var(--text-dark);margin-bottom:1.5rem}.reports-controls{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.report-type-selector{display:flex;gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.report-type-selector button{padding:.6rem 1.5rem;border:none;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-muted);font-weight:500;cursor:pointer;transition:all .3s ease;border-right:1px solid var(--border-color)}.report-type-selector button:last-child{border-right:none}.report-type-selector button.active{background:var(--primary-color);color:#fff}.report-type-selector button:hover:not(.active){background:var(--bg-subtle)}.date-range-selector{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.date-range-selector input{padding:.4rem .8rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.9rem;font-family:Inter,sans-serif}.date-range-selector span{color:var(--text-muted);font-weight:500}.apply-filter-btn{padding:.5rem 1.2rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;transition:transform .2s ease}.download-excel-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #11998e4d}.download-excel-btn:hover{box-shadow:0 6px 20px #11998e66}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2.5rem}.summary-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);padding:1.5rem;border-radius:var(--radius-sm);box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:1.2rem;transition:all .3s ease;border:1px solid #f0f0f0}.summary-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.card-icon{width:60px;height:60px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff}.card-icon.blue{background:var(--primary-color)}.card-icon.green{background:linear-gradient(135deg,#11998e,#38ef7d)}.card-icon.orange{background:linear-gradient(135deg,#ff6b6b,#feca57)}.card-icon.purple{background:linear-gradient(135deg,#a8c0ff,#3f2b96)}.card-content h2{font-size:1.25rem;font-weight:700;color:var(--text-dark);margin:0;line-height:1}.card-content p{font-size:.9rem;color:var(--text-muted);margin:.3rem 0 0;font-weight:500}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.chart-container{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);padding:1.5rem;border-radius:var(--radius-sm);box-shadow:0 2px 8px #00000014;border:1px solid #f0f0f0}.chart-container.full-width{grid-column:1 / -1}.chart-container h2{font-size:1.3rem;color:var(--text-dark);margin:0 0 1.5rem;font-weight:600;padding-bottom:.8rem;border-bottom:2px solid #f0f0f0}.chart-wrapper{height:300px;position:relative}.chart-container.full-width .chart-wrapper{height:400px}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.2rem;color:var(--text-muted)}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}.chart-container{grid-column:1}}.productivity-section{margin-top:1rem}.productivity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.8rem;border-bottom:2px solid #f0f0f0;flex-wrap:wrap;gap:1rem}.productivity-header h2{display:flex;align-items:center;gap:.5rem;margin:0;padding:0;border:none}.employee-selector{display:flex;align-items:center;gap:.75rem}.employee-selector label{font-weight:500;color:#555}.employee-dropdown{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.9rem;font-family:Inter,sans-serif;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);cursor:pointer;min-width:180px;transition:all .2s ease}.employee-dropdown:hover{border-color:var(--primary-color)}.employee-dropdown:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.productivity-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:var(--radius-sm);background:#f8f9fa;min-width:150px}.stat-item svg{font-size:1.125rem}.stat-item.on-time{background:#4bc05c1a;color:#2d8a3e}.stat-item.on-time svg{color:#4bc05c}.stat-item.late{background:#ff63841a;color:#c73e5a}.stat-item.late svg{color:#ff6384}.stat-item.total{background:#667eea1a;color:#4a5a9e}.stat-item.total svg{color:var(--primary-color)}.stat-value{font-size:1.125rem;font-weight:700}.stat-label{font-size:.85rem;font-weight:500;opacity:.8}.no-data{text-align:center;padding:3rem;color:#888;font-size:1.1rem}.metrics-summary{display:flex;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.metric-card{display:flex;flex-direction:column;gap:.25rem;padding:1.25rem 1.5rem;border-radius:var(--radius-sm);min-width:200px;flex:1;max-width:280px}.metric-card.lead-time{background:linear-gradient(135deg,#36a2eb1a,#36a2eb33);border:1px solid rgba(54,162,235,.3)}.metric-card.cycle-time{background:#6639ba14;border:1px solid rgba(153,102,255,.3)}.metric-label{font-size:.85rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.25rem;font-weight:700;color:var(--text-dark)}.metric-card.lead-time .metric-value{color:#2980b9}.metric-card.cycle-time .metric-value{color:#8e44ad}.metric-desc{font-size:.8rem;color:#888}.workload-heatmap{overflow-x:auto}.heatmap-header,.heatmap-row{display:grid;grid-template-columns:150px repeat(4,1fr);gap:2px;min-width:500px}.heatmap-header{margin-bottom:4px}.heatmap-cell{padding:.75rem 1rem;text-align:center;font-size:.9rem}.header-cell{background:#f0f0f0;font-weight:600;color:#333;border-radius:var(--radius-sm)}.user-cell{text-align:left;font-weight:500;background:#fafafa;border-radius:var(--radius-sm) 0 0 6px}.data-cell{font-weight:600;border-radius:4px;transition:transform .2s ease}.data-cell:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026;z-index:1}.total-cell{border-radius:0 6px 6px 0}.heatmap-row{margin-bottom:4px}.heatmap-legend{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee;font-size:.85rem;color:var(--text-muted)}.legend-gradient{width:150px;height:12px;border-radius:var(--radius-sm);background:linear-gradient(to right,#96f3,#9966ff80,#96fc)}@media (max-width: 768px){.reports-container{padding:1rem}.reports-header h1{font-size:1.125rem}.reports-controls{flex-direction:column;align-items:stretch}.date-range-selector{flex-wrap:wrap}.summary-cards{grid-template-columns:1fr}.productivity-header{flex-direction:column;align-items:flex-start}.productivity-stats{flex-direction:column}.stat-item,.employee-dropdown{width:100%}.metrics-summary{flex-direction:column}.metric-card{max-width:100%}.heatmap-header,.heatmap-row{grid-template-columns:100px repeat(4,1fr)}.heatmap-cell{padding:.5rem;font-size:.8rem}}.invite-manager{padding:24px;max-width:900px;margin:0 auto}.invite-manager h2{font-size:1.4rem;font-weight:700;color:var(--text-dark);margin:0 0 4px}.invite-subtitle{font-size:.9rem;color:var(--text-light);margin:0 0 28px}.invite-create-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:24px;margin-bottom:24px}.invite-create-card h3{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 18px}.invite-form-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;align-items:end}.invite-form-group{display:flex;flex-direction:column;gap:5px}.invite-form-group--short{min-width:110px}.invite-form-group label{font-size:.8rem;font-weight:600;color:var(--text-dark);text-transform:uppercase;letter-spacing:.04em}.invite-form-group input,.invite-form-group select{border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:9px 12px;font-size:.9rem;color:var(--text-dark);background:var(--glass-bg);width:100%;box-sizing:border-box;transition:border-color .15s}.invite-form-group input:focus,.invite-form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.invite-form-actions{display:flex;justify-content:flex-end;margin-top:16px}.btn-create-invite{display:flex;align-items:center;gap:6px;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);padding:10px 24px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-create-invite:hover{background:var(--primary-dark)}.btn-create-invite:disabled{opacity:.55;cursor:not-allowed}.invite-result-banner{background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);padding:18px 20px;margin-bottom:24px}.invite-result-title{font-weight:600;color:var(--success-color);margin:0 0 12px;font-size:.95rem}.invite-result-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.invite-result-label{font-size:.8rem;font-weight:700;color:var(--success-color);min-width:36px}.invite-result-value{font-family:monospace;font-size:.85rem;background:#10b98126;padding:3px 8px;border-radius:5px;color:#14532d;word-break:break-all;flex:1}.invite-code-mono{letter-spacing:.12em;font-size:1rem;font-weight:700}.btn-copy{display:flex;align-items:center;gap:5px;background:var(--glass-bg);border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);padding:5px 12px;font-size:.82rem;font-weight:600;color:var(--success-color);cursor:pointer;white-space:nowrap;transition:background .15s}.btn-copy:hover{background:#10b98126}.btn-dismiss-result{margin-top:10px;background:none;border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);padding:4px 14px;font-size:.82rem;color:var(--success-color);cursor:pointer;transition:background .15s}.btn-dismiss-result:hover{background:#10b98126}.invite-list-header{margin-bottom:12px}.invite-list-header h3{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0}.invite-list{display:flex;flex-direction:column;gap:10px}.invite-item{background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:14px 18px;display:flex;align-items:center;gap:16px}.invite-item--used,.invite-item--expired,.invite-item--revoked{opacity:.55}.invite-item-main{flex:1;min-width:0}.invite-item-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.invite-item-code{font-family:monospace;font-weight:700;font-size:.9rem;letter-spacing:.1em;color:var(--text-dark)}.invite-status-badge{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md)}.invite-status--active{background:#10b98126;color:var(--success-color)}.invite-status--used{background:#3b82f626;color:#60a5fa}.invite-status--expired{background:var(--surface-2, #f1f5f9);color:var(--text-light)}.invite-status--revoked{background:#ef444426;color:var(--danger-color)}.invite-role-badge{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md);background:#0969da14;color:var(--primary-color)}.invite-dept{font-size:.85rem;color:var(--text-dark)}.invite-item-meta{font-size:.78rem;color:var(--text-light)}.invite-item-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.btn-copy-inline{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:5px 8px;cursor:pointer;color:var(--text-light);display:flex;align-items:center;transition:background .15s,color .15s}.btn-copy-inline:hover{background:var(--surface-2);color:var(--primary-color)}.btn-revoke-invite{background:none;border:1px solid var(--danger-color);color:var(--danger-color);border-radius:var(--radius-sm);padding:5px 8px;cursor:pointer;display:flex;align-items:center;transition:background .15s}.btn-revoke-invite:hover{background:#ef444414}.invite-loading{text-align:center;color:var(--text-light);padding:24px;font-size:.9rem}.invite-empty{text-align:center;padding:48px 24px;color:var(--text-light);font-size:.95rem;border:1px dashed var(--glass-border);border-radius:var(--radius-sm)}[data-theme=dark] .invite-create-card,[data-theme=dark] .invite-item{background:var(--surface)}[data-theme=dark] .invite-form-group input,[data-theme=dark] .invite-form-group select{background:var(--surface-2)}[data-theme=dark] .invite-result-banner{background:#34d39914;border-color:#34d3994d}[data-theme=dark] .invite-result-title,[data-theme=dark] .invite-result-label{color:#34d399}[data-theme=dark] .invite-result-value{background:#34d3991a;color:#a7f3d0}[data-theme=dark] .btn-copy{background:transparent;border-color:#34d39966;color:#34d399}[data-theme=dark] .btn-copy:hover{background:#34d3991a}[data-theme=dark] .btn-dismiss-result{border-color:#34d39966;color:#34d399}[data-theme=dark] .invite-role-badge{background:#8b5cf633;color:var(--primary-color)}[data-theme=dark] .invite-status--active{background:#34d39926;color:#34d399}[data-theme=dark] .invite-status--used{background:#60a5fa26;color:#60a5fa}[data-theme=dark] .invite-status--revoked{background:#f8717126;color:var(--danger-color)}@media (max-width: 700px){.invite-form-row{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.invite-form-row{grid-template-columns:1fr}}.admin-container{display:flex;flex-direction:column;height:calc(100vh - 120px);animation:fadeIn .5s ease-out}.admin-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;gap:1rem;color:var(--text-light)}.admin-header{margin-bottom:1.5rem}.admin-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.admin-title-row h1{font-size:1.25rem;font-weight:700;color:var(--text-dark)}.admin-header-actions{display:flex;gap:.75rem;align-items:center}.create-project-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md)}.create-project-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow-lg)}.refresh-btn{display:flex;align-items:center;padding:.75rem;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;transition:var(--transition)}.refresh-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.refresh-btn.active-tab-btn{background:var(--glass-bg);border-color:var(--primary-color);color:var(--primary-color)}.admin-stats-row{display:flex;gap:.5rem}.stat-pill{display:inline-flex;align-items:center;padding:.25rem .75rem;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:999px;font-size:.85rem;font-weight:500;color:var(--text-light)}.admin-body{display:flex;flex:1;gap:1rem;overflow:hidden}.admin-tree-area{flex:1;overflow:auto}.tree-scroll{padding:.5rem 0;min-width:fit-content}.empty-tree{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:var(--text-light);gap:1rem}.tree-node-wrapper{position:relative}.tree-node{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-radius:var(--radius-sm);box-shadow:0 2px 8px var(--primary-glow);border:1px solid var(--glass-border);margin-bottom:.5rem;transition:var(--transition);overflow:hidden}.tree-node:hover{box-shadow:var(--shadow-md)}.tree-node.level-0{border-left:4px solid var(--primary-color)}.tree-node.level-1{border-left:4px solid var(--warning-color)}.tree-node.level-2{border-left:4px solid var(--secondary-color)}.tree-node.level-3{border-left:4px solid #6b7280}.tree-node-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:var(--transition)}.tree-node-header:hover{background:var(--glass-bg)}.tree-node-header.drop-target-active{background:#10b98114;outline:2px dashed var(--success-color);outline-offset:-2px;border-radius:var(--radius-sm)}.drag-overlay-project{box-shadow:var(--shadow-lg)!important;border:2px solid var(--primary-color)!important;cursor:grabbing;z-index:1000;max-width:280px}.tree-node-avatar{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-dark)}.tree-node-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.tree-node-name{font-weight:600;font-size:.95rem;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-node-status{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tree-expand-icon{color:var(--text-light);display:flex;align-items:center;flex-shrink:0}.role-badge,.person-role-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.role-admin{background:#ef44441f;color:var(--danger-color)}.role-manager{background:#fef3c7;color:var(--warning-color)}.role-hr{background:#dbeafe;color:var(--primary-color)}.role-employee{background:var(--glass-bg-subtle);color:var(--text-muted)}.tree-children{margin-left:1.5rem;padding-left:.5rem}.tree-child-branch{position:relative;padding-left:1.5rem}.tree-line-v{position:absolute;left:0;top:-.5rem;bottom:50%;width:2px;background:var(--border-color)}.tree-line-h{position:absolute;left:0;top:50%;width:1.5rem;height:2px;background:var(--border-color);transform:translateY(-50%)}.tree-child-branch:first-child .tree-line-v{top:-.25rem}.tree-child-branch:last-child .tree-line-v{bottom:50%}.tree-projects{padding:.5rem 1rem .75rem;display:flex;flex-wrap:wrap;gap:.5rem}.project-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-left:4px solid var(--primary-color);border-radius:var(--radius-sm);padding:.625rem .75rem;min-width:220px;max-width:320px;transition:var(--transition)}.project-card:hover{box-shadow:0 2px 8px var(--primary-glow)}.project-card.drop-hover{border-color:var(--primary-color);background:#0969da0f;box-shadow:0 0 0 2px var(--primary-glow)}.project-card-header{display:flex;align-items:center;gap:.375rem}.project-card-name{flex:1;font-size:.875rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-card-actions{display:flex;gap:.125rem;opacity:0;transition:opacity .2s}.project-card:hover .project-card-actions{opacity:1}.project-card-actions button{padding:.25rem;background:transparent;border:none;color:var(--text-light);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.project-card-actions button:hover{background:var(--glass-bg-strong);color:var(--primary-color)}.project-card-actions button:last-child:hover{color:var(--danger-color)}.project-task-count{margin-top:.25rem;font-size:.75rem;color:var(--text-light)}.project-employees{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border-color)}.project-employee{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);transition:var(--transition)}.project-employee:hover{background:#7c3aed0f}.project-employee.unassigned{background:var(--glass-bg)}.project-leadership{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border-color);display:flex;flex-direction:column;gap:.5rem}.leadership-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.25rem;border-radius:var(--radius-sm);transition:var(--transition)}.leadership-row.drop-active{background:var(--primary-glow);outline:1px dashed var(--primary-color)}.leadership-label{font-size:.75rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.02em}.leadership-value{font-size:.8rem;font-weight:500;color:var(--primary-color);cursor:pointer;padding:.125rem .375rem;border-radius:4px;transition:var(--transition);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.leadership-value:hover{background:#0969da0f}.leadership-value.empty{color:var(--text-light);font-style:italic;font-weight:400}.leadership-select{font-size:.8rem;padding:.125rem .25rem;border:1px solid var(--primary-color);border-radius:4px;outline:none;background:var(--glass-bg-strong);color:var(--text-dark);max-width:120px}.project-employee-avatar{width:24px;height:24px;background:var(--glass-bg);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-light);flex-shrink:0}.project-employee-info{display:flex;align-items:center;gap:.375rem;flex:1;min-width:0}.project-employee-name{font-size:.8rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-remove{background:none;border:none;color:var(--text-light);cursor:pointer;padding:.125rem;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.project-employee:hover .employee-remove{opacity:1}.employee-remove:hover{background:#ef44441f;color:var(--danger-color)}.project-empty-drop{margin-top:.375rem;padding:.5rem;border:1px dashed var(--glass-border);border-radius:var(--radius-sm);text-align:center;font-size:.75rem;color:var(--text-light)}.unassigned-employees-grid{display:flex;flex-wrap:wrap;gap:.375rem}.unassigned-employees-grid .project-employee{min-width:180px;max-width:240px}.unassigned-projects{margin-top:1.5rem;padding:1rem;background:var(--glass-bg-strong);border-radius:var(--radius-sm);border:2px dashed var(--glass-border)}.unassigned-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:var(--text-light);margin-bottom:.75rem}.people-sidebar{position:relative;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-sm);box-shadow:none;border:1px solid var(--glass-border);transition:width .3s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column}.people-sidebar.open{width:280px;min-width:280px}.people-sidebar.collapsed{width:40px;min-width:40px}.sidebar-toggle{position:absolute;top:.75rem;left:.5rem;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;transition:var(--transition);z-index:2}.sidebar-toggle:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem .75rem 2.75rem;border-bottom:1px solid var(--glass-border)}.sidebar-header h3{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:var(--text-dark);margin:0}.sidebar-count{background:var(--glass-bg);color:var(--text-light);padding:.125rem .5rem;border-radius:999px;font-size:.8rem;font-weight:600}.sidebar-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;margin:.5rem .75rem;background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border);transition:var(--transition)}.sidebar-search:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.sidebar-search svg{color:var(--text-light);flex-shrink:0}.sidebar-search input{flex:1;border:none;background:transparent;font-size:.875rem;color:var(--text-dark);outline:none}.clear-search{background:none;border:none;color:var(--text-light);cursor:pointer;display:flex;align-items:center;padding:.125rem;border-radius:4px;transition:var(--transition)}.clear-search:hover{background:var(--border-color);color:var(--text-dark)}.sidebar-people-list{flex:1;overflow-y:auto;padding:.5rem .75rem;display:flex;flex-direction:column;gap:.375rem}.sidebar-empty{text-align:center;padding:2rem 1rem;color:var(--text-light);font-size:.875rem}.person-box{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none}.person-box:hover{background:#0969da0f;border-color:#c7d2fe}.person-box.dragging{opacity:.4}.person-box.drag-overlay{background:var(--glass-bg-strong);box-shadow:var(--shadow-lg);border-color:var(--primary-color);cursor:grabbing;z-index:1000}.person-avatar{width:28px;height:28px;background:var(--glass-bg-strong);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-light);flex-shrink:0;border:1px solid var(--glass-border)}.person-details{display:flex;flex-direction:column;flex:1;min-width:0}.person-name{font-size:.8rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-role-badge{font-size:.65rem}.person-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-modal{max-width:520px}.color-picker{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.25rem}.color-dot{width:28px;height:28px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:var(--transition)}.color-dot:hover{transform:scale(1.15)}.color-dot.active{border-color:var(--text-dark);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--text-dark)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem}.cancel-btn{padding:.75rem 1.25rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;color:var(--text-dark);cursor:pointer;transition:var(--transition)}.cancel-btn:hover{background:var(--border-color)}.submit-btn{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition)}.submit-btn:hover:not(:disabled){background:var(--primary-dark)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.admin-tabs{display:flex;gap:.25rem;margin-top:.75rem;border-bottom:2px solid var(--border-color)}.admin-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-light);font-size:.95rem;font-weight:500;cursor:pointer;transition:var(--transition);margin-bottom:-2px}.admin-tab:hover{color:var(--primary-color);background:var(--primary-glow)}.admin-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.people-tab{flex:1;display:flex;flex-direction:column;overflow:hidden}.people-tab-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;flex-wrap:wrap}.people-tab-filters{display:flex;gap:.75rem;align-items:center;flex:1}.people-search{flex:1;max-width:320px;margin:0}.people-role-filter{padding:.5rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--glass-bg-strong);color:var(--text-dark);cursor:pointer;transition:var(--transition)}.people-role-filter:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.people-table-wrap{flex:1;overflow:auto;background:var(--glass-bg-strong);border-radius:var(--radius-sm);box-shadow:0 2px 8px var(--primary-glow);border:1px solid var(--glass-border)}.people-table{width:100%;border-collapse:collapse;font-size:.9rem}.people-table thead{position:sticky;top:0;z-index:1}.people-table th{background:var(--glass-bg);padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);border-bottom:1px solid var(--glass-border);white-space:nowrap}.people-table td{padding:.625rem 1rem;border-bottom:1px solid var(--glass-border);vertical-align:middle}.people-table tbody tr{transition:background .15s}.people-table tbody tr:hover{background:#fafafe}.people-table-user{display:flex;align-items:center;gap:.625rem;font-weight:600;color:var(--text-dark);white-space:nowrap}.people-table-avatar{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-dark);flex-shrink:0}.people-table-email,.people-table-dept{color:var(--text-light);font-size:.85rem}.people-table-manager{font-size:.875rem;color:var(--text-dark)}.clickable{cursor:pointer;transition:var(--transition)}.clickable:hover{opacity:.75}.people-table-status{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.375rem;vertical-align:middle}.people-table-status-text{font-size:.85rem;color:var(--text-light)}.people-table-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .2s}.people-table tbody tr:hover .people-table-actions{opacity:1}.people-table-actions button{padding:.375rem;background:transparent;border:none;color:var(--text-light);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:var(--transition)}.people-table-actions button:hover{background:var(--glass-bg);color:var(--primary-color)}.people-table-actions .danger-action:hover{background:#ef44441f;color:var(--danger-color)}.people-table-actions .reset-pwd-action:hover{background:#fef3c7;color:var(--warning-color)}.people-table-empty{text-align:center;padding:3rem 1rem;color:var(--text-light);font-style:italic}.inline-select{padding:.25rem .5rem;border:2px solid var(--primary-color);border-radius:var(--radius-sm);font-size:.8rem;background:var(--glass-bg-strong);color:var(--text-dark);cursor:pointer;outline:none;box-shadow:0 0 0 3px var(--primary-glow)}.section-divider-row td{background:var(--glass-bg);padding:.5rem 1rem!important;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-color);border-bottom:2px solid var(--primary-color);display:flex;align-items:center;gap:.5rem}.section-divider-other td{color:var(--text-light);border-bottom-color:var(--border-color)}.row-in-subtree{background:#0969da1a}.row-other{opacity:.85}.row-other:hover{opacity:1}.subtree-badge{display:inline-block;padding:.1rem .4rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;background:#0969da0f;color:var(--primary-color);border:1px solid #c7d2fe;margin-left:.375rem}.people-tab-legend{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:var(--text-light)}.legend-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.legend-subtree{background:var(--primary-color)}.legend-other{background:var(--border-color)}.user-modal{max-width:560px}.user-modal label{display:flex;align-items:center;gap:.375rem}@media (max-width: 768px){.admin-title-row h1{font-size:1.125rem}.admin-body{flex-direction:column}.people-sidebar.open{width:100%;min-width:auto;max-height:300px}.tree-children{margin-left:1rem}.tree-child-branch{padding-left:1rem}.tree-line-h{width:1rem}.people-tab-header{flex-direction:column;align-items:stretch}.people-tab-filters{flex-direction:column}.people-search{max-width:none}.people-table{font-size:.8rem}.people-table th,.people-table td{padding:.5rem .625rem}}.admin-protected-label{font-size:1rem;cursor:default;opacity:.6;display:inline-flex;align-items:center;justify-content:center}.back-btn-link{display:flex;align-items:center;justify-content:center;background:var(--glass-bg-strong);border:1px solid var(--glass-border);color:var(--text-light);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:var(--transition);margin-right:1rem;box-shadow:0 2px 8px var(--primary-glow)}.back-btn-link:hover{background:var(--glass-bg);color:var(--primary-color);border-color:var(--primary-color);transform:translate(-2px);box-shadow:var(--shadow-md)}.header-actions{display:flex;align-items:center;gap:1rem}.search-box{display:flex;align-items:center;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.6rem 1rem;width:350px;transition:var(--transition);box-shadow:0 2px 8px var(--primary-glow)}.search-box:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 4px var(--primary-glow),var(--shadow-md);width:400px}.search-box svg{color:var(--text-light);margin-right:.75rem;transition:var(--transition)}.search-box:focus-within svg{color:var(--primary-color);transform:scale(1.1)}.search-box input{border:none;outline:none;width:100%;font-size:.95rem;color:var(--text-dark);background:transparent}.search-box input::placeholder{color:var(--text-light);opacity:.7}.refresh-btn{display:flex;align-items:center;justify-content:center;background:var(--glass-bg-strong);border:1px solid var(--glass-border);color:var(--text-light);width:42px;height:42px;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);box-shadow:0 2px 8px var(--primary-glow)}.refresh-btn:hover{background:var(--glass-bg);color:var(--primary-color);border-color:var(--primary-color);transform:rotate(180deg);box-shadow:var(--shadow-md)}.admin-tab-content.standalone-trash{background:var(--glass-bg-strong);border-radius:var(--radius-sm);border:1px solid var(--glass-border);box-shadow:0 2px 8px var(--primary-glow);margin-top:1rem;overflow:hidden;animation:fadeIn .3s ease-out}.standalone-trash .tab-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--glass-border);background:var(--glass-bg-strong);border-radius:var(--radius-sm) 12px 0 0}.header-left{display:flex;align-items:center;gap:1rem}.header-left h2{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;color:var(--text-dark)}.count-badge{background:var(--glass-bg);color:var(--text-light);padding:.25rem .75rem;border-radius:var(--radius-md);font-size:.8rem;font-weight:500;border:1px solid var(--glass-border)}.trash-list-container{padding:1.5rem;overflow-y:auto;max-height:calc(100vh - 250px)}.trash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.trash-item{background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem;transition:var(--transition);box-shadow:0 2px 8px var(--primary-glow)}.trash-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-light)}.trash-item-info h4{margin:0 0 .5rem;color:var(--text-main);font-size:1rem;font-weight:600}.trash-item-desc{font-size:.875rem;color:var(--text-light);margin:0 0 1rem;line-height:1.5}.trash-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.trash-item-date{font-size:.75rem;color:var(--text-muted)}.trash-item-meta{display:flex;flex-direction:column;gap:.375rem;font-size:.75rem;color:var(--text-light);border-top:1px solid var(--bg-light);padding-top:.75rem}.meta-project{display:flex;align-items:center;gap:.25rem;font-weight:500}.restore-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--glass-bg);color:var(--primary-color);border:1px solid var(--primary-light);padding:.5rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition)}.restore-btn:hover{background:var(--primary-color);color:#fff}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-muted);text-align:center}.empty-state p{margin-top:1rem;font-size:1.1rem}.loading-state{padding:2rem;text-align:center;color:var(--text-light)}[data-theme=dark] .tree-node{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .tree-node-header:hover{background:var(--glass-bg)}[data-theme=dark] .tree-node-header.drop-target-active{background:#10b9811a;outline-color:#34d399}[data-theme=dark] .people-sidebar{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .sidebar-header{border-bottom-color:var(--border-color)}[data-theme=dark] .sidebar-search{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .sidebar-search input{color:var(--text-dark)}[data-theme=dark] .sidebar-search input::placeholder{color:var(--text-light)}[data-theme=dark] .unassigned-projects{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .person-box{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .person-box:hover{background:#8b9eff26;border-color:#8b9eff66}[data-theme=dark] .person-box.drag-overlay{background:var(--glass-bg-strong);border-color:var(--primary-color)}[data-theme=dark] .person-avatar{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .project-card{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .project-card.drop-hover{background:#8b9eff1a;border-color:var(--primary-color)}[data-theme=dark] .project-card-actions button:hover{background:var(--glass-bg-strong)}[data-theme=dark] .project-employee{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .project-employee:hover{background:#8b9eff1a}[data-theme=dark] .project-employee.unassigned,[data-theme=dark] .project-employee-avatar{background:var(--glass-bg)}[data-theme=dark] .employee-remove:hover{background:#f8717133}[data-theme=dark] .project-empty-drop{border-color:var(--glass-border)}[data-theme=dark] .leadership-select{background:var(--glass-bg-strong);color:var(--text-dark);border-color:var(--primary-color)}[data-theme=dark] .leadership-value:hover{background:#8b9eff26}[data-theme=dark] .refresh-btn,[data-theme=dark] .stat-pill{background:var(--glass-bg-strong);border-color:var(--glass-border)}[data-theme=dark] .role-admin{background:#dc262633;color:#fca5a5}[data-theme=dark] .role-manager{background:#d9770633;color:#fdba74}[data-theme=dark] .role-hr{background:#2563eb33;color:#93c5fd}[data-theme=dark] .role-employee{background:#6b728033;color:#d1d5db}[data-theme=dark] .role-sales{background:#8b5cf633;color:#d8b4fe}[data-theme=dark] .role-accounts{background:#22c55e33;color:#86efac}[data-theme=dark] .sidebar-toggle{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .sidebar-count{background:var(--glass-bg)}[data-theme=dark] .clear-search:hover{background:var(--glass-bg-strong)}.attendance-tab{padding:20px 24px;max-width:900px}.attendance-tab__toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px}.att-search-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:7px 12px;background:var(--glass-bg);flex:1;max-width:320px;color:var(--text-light)}.att-search-wrap input{border:none;background:none;outline:none;font-size:.88rem;color:var(--text-dark);flex:1}.att-search-wrap button{background:none;border:none;cursor:pointer;color:var(--text-light);display:flex;align-items:center}.att-count{font-size:.8rem;color:var(--text-light);white-space:nowrap}.attendance-tab__list{display:flex;flex-direction:column;gap:8px}.att-row{border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--glass-bg)}.att-row__header{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s}.att-row__header:hover{background:var(--glass-bg)}.att-row__avatar{width:36px;height:36px;border-radius:50%;background:#ede9fe;color:var(--primary-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0}.att-row__info{flex:1;display:flex;flex-direction:column;gap:2px}.att-row__name{font-weight:700;font-size:.92rem;color:var(--text-dark)}.att-row__meta{font-size:.75rem;color:var(--text-light)}.att-row__chevron{color:var(--text-light);transition:transform .2s;display:flex}.att-row__chevron.open{transform:rotate(180deg)}.att-row__calendar{padding:16px 20px 20px;border-top:1px solid var(--glass-border);background:var(--glass-bg-strong)}.att-empty{text-align:center;padding:40px;color:var(--text-light);font-size:.9rem;border:1px dashed var(--glass-border);border-radius:var(--radius-sm)}[data-theme=dark] .att-row{background:var(--glass-bg-strong)}[data-theme=dark] .att-row__header:hover,[data-theme=dark] .att-row__calendar{background:var(--glass-bg)}[data-theme=dark] .att-row__avatar{background:#8b5cf633;color:var(--primary-color)}[data-theme=dark] .att-search-wrap{background:var(--glass-bg-strong)}.lm-container{padding:1.5rem;max-width:900px;margin:0 auto}.lm-header{margin-bottom:1.5rem}.lm-title{display:flex;align-items:center;gap:10px;font-size:1.125rem;font-weight:600;color:var(--text-dark);margin:0 0 4px}.lm-subtitle{color:var(--text-muted);font-size:.9rem;margin:0}.lm-filters{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.lm-filter-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-light);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.lm-filter-btn:hover{border-color:var(--glass-border);color:var(--text-dark)}.lm-filter-btn.active{border-color:var(--primary-color);background:#0969da14;color:var(--primary-color)}.lm-filter-count{background:var(--primary-color);color:#fff;font-size:.72rem;font-weight:700;padding:1px 7px;border-radius:var(--radius-sm);min-width:20px;text-align:center}.lm-loading,.lm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:4rem 2rem;color:#cbd5e1;font-size:.95rem}.lm-list{display:flex;flex-direction:column;gap:14px}.lm-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.25rem;transition:all .2s ease;box-shadow:0 2px 8px var(--primary-glow)}.lm-card:hover{border-color:var(--glass-border);box-shadow:0 8px 20px var(--primary-glow)}.lm-card-actionable{border-left:4px solid var(--primary-color)}.lm-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lm-card-user{display:flex;align-items:center;gap:10px}.lm-user-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),#a855f7);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0}.lm-user-name{font-weight:700;font-size:.95rem;color:var(--text-dark)}.lm-user-meta{font-size:.8rem;color:var(--text-muted);font-weight:500}.lm-status-badge{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:4px 12px;border-radius:var(--radius-md)}.lm-pending{background:linear-gradient(135deg,#fff7ed,#fed7aa);color:#c2410c}.lm-approved{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:var(--success-color)}.lm-rejected{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:var(--danger-color)}.lm-card-dates{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:var(--text-dark);margin-bottom:8px}.lm-date-arrow{color:#cbd5e1}.lm-card-reason{font-size:.85rem;color:var(--text-light);line-height:1.5;margin-bottom:10px}.lm-approvals{margin-bottom:10px}.lm-approvals-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-bottom:6px}.lm-approval-chips{display:flex;flex-wrap:wrap;gap:6px}.lm-approval-chip{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--radius-sm);font-size:.78rem;font-weight:600;border:1px solid var(--glass-border);background:var(--glass-bg);transition:all .15s ease}.lm-approval-chip-pending{border-color:#fed7aa;background:#fffbf5}.lm-approval-chip-approved{border-color:#a7f3d0;background:#f0fdf8}.lm-approval-chip-rejected{border-color:#fecaca;background:#fef5f5}.lm-chip-icon{font-weight:600;font-size:.85rem}.lm-approval-chip-pending .lm-chip-icon{color:var(--warning-color)}.lm-approval-chip-approved .lm-chip-icon{color:var(--success-color)}.lm-approval-chip-rejected .lm-chip-icon{color:var(--danger-color)}.lm-chip-name{color:var(--text-dark)}.lm-chip-role{color:var(--text-muted);font-weight:500}.lm-actions{border-top:1px solid #f1f5f9;padding-top:12px;margin-top:6px}.lm-comment-box{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--text-muted)}.lm-comment-box input{flex:1;padding:9px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;color:var(--text-dark);outline:none;transition:all .2s ease;font-family:inherit}.lm-comment-box input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.lm-action-btns{display:flex;gap:8px;align-items:center}.lm-comment-toggle{display:flex;align-items:center;gap:5px;padding:8px 14px;border:1.5px solid #e2e8f0;border-radius:var(--radius-sm);background:transparent;color:var(--text-light);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.lm-comment-toggle:hover{border-color:var(--glass-border);background:var(--glass-bg)}.lm-approve-btn{display:flex;align-items:center;gap:5px;padding:8px 18px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:auto}.lm-approve-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 3px 10px #10b9814d}.lm-reject-btn{display:flex;align-items:center;gap:5px;padding:8px 18px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.lm-reject-btn:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 3px 10px #ef44444d}.lm-approve-btn:disabled,.lm-reject-btn:disabled{opacity:.6;cursor:wait}.lm-rejection-note{margin-top:8px;padding:10px 14px;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:var(--radius-sm);font-size:.82rem;color:var(--danger-color);line-height:1.5}.lm-rejection-note strong{color:#7f1d1d}@media (max-width: 640px){.lm-container{padding:1rem}.lm-card-top{flex-direction:column;align-items:flex-start;gap:8px}.lm-approval-chips{flex-direction:column}.lm-action-btns{flex-wrap:wrap}.lm-approve-btn{margin-left:0}.lm-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.lm-filter-btn{white-space:nowrap}}[data-theme=dark] .lm-title{color:var(--text-dark)}[data-theme=dark] .lm-subtitle{color:var(--text-light)}[data-theme=dark] .lm-filter-btn{border-color:var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-light)}[data-theme=dark] .lm-filter-btn:hover{border-color:var(--text-light);color:var(--text-dark)}[data-theme=dark] .lm-filter-btn.active{border-color:var(--primary-color);background:#8b9eff26;color:var(--primary-color)}[data-theme=dark] .lm-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-color:var(--glass-border)}[data-theme=dark] .lm-card:hover{border-color:var(--text-light)}[data-theme=dark] .lm-card-actionable{border-left-color:var(--primary-color)}[data-theme=dark] .lm-user-name{color:var(--text-dark)}[data-theme=dark] .lm-user-meta{color:var(--text-light)}[data-theme=dark] .lm-card-dates{color:var(--text-dark)}[data-theme=dark] .lm-date-arrow,[data-theme=dark] .lm-card-reason,[data-theme=dark] .lm-approvals-title{color:var(--text-light)}[data-theme=dark] .lm-approval-chip{border-color:var(--glass-border);background:var(--glass-bg)}[data-theme=dark] .lm-approval-chip-pending{border-color:#f59e0b66;background:#f59e0b1a}[data-theme=dark] .lm-approval-chip-approved{border-color:#10b98166;background:#10b9811a}[data-theme=dark] .lm-approval-chip-rejected{border-color:#ef444466;background:#ef44441a}[data-theme=dark] .lm-chip-name{color:var(--text-dark)}[data-theme=dark] .lm-chip-role{color:var(--text-light)}[data-theme=dark] .lm-actions{border-top-color:var(--border-color)}[data-theme=dark] .lm-comment-box input{border-color:var(--glass-border);background:var(--glass-bg);color:var(--text-dark)}[data-theme=dark] .lm-comment-box input::placeholder{color:var(--text-light)}[data-theme=dark] .lm-comment-box input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #8b9eff33}[data-theme=dark] .lm-comment-toggle{border-color:var(--glass-border);color:var(--text-light)}[data-theme=dark] .lm-comment-toggle:hover{border-color:var(--text-light);background:var(--glass-bg)}[data-theme=dark] .lm-rejection-note{background:#ef44441a;border-color:#ef44444d;color:#fca5a5}[data-theme=dark] .lm-rejection-note strong{color:#fca5a5}[data-theme=dark] .lm-pending{background:#f59e0b33;color:#fbbf24}[data-theme=dark] .lm-approved{background:#10b98133;color:#34d399}[data-theme=dark] .lm-rejected{background:#ef444433;color:var(--danger-color)}.pm-container{padding:1.5rem;max-width:1100px;margin:0 auto}.pm-header{margin-bottom:1.5rem}.pm-title{display:flex;align-items:center;gap:10px;font-size:1.125rem;font-weight:600;color:var(--text-dark);margin:0 0 4px}.pm-subtitle{color:var(--text-muted);font-size:.9rem;margin:0}.pm-tabs{display:flex;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}.pm-tab-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--text-light);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.pm-tab-btn:hover{border-color:var(--glass-border);color:var(--text-dark)}.pm-tab-btn.active{border-color:var(--primary-color);background:#0969da14;color:var(--primary-color)}.pm-loading,.pm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:4rem 2rem;color:var(--text-muted);font-size:.95rem}.pm-payslip-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:1.5rem;flex-wrap:wrap}.pm-period-selector{display:flex;gap:8px}.pm-period-selector select,.pm-period-selector input{padding:8px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;color:var(--text-dark);background:var(--glass-bg)}.pm-period-selector input{width:90px}.pm-run-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease}.pm-run-btn:hover:not(:disabled){box-shadow:none}.pm-run-btn:disabled{opacity:.6;cursor:not-allowed}.pm-payslip-list{overflow-x:auto}.pm-payslip-header-row,.pm-payslip-row{display:grid;grid-template-columns:2fr repeat(3,.7fr) repeat(3,1.1fr) .8fr .9fr;gap:8px;align-items:center;padding:10px 14px}.pm-payslip-header-row{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);border-bottom:2px solid #e2e8f0;background:var(--glass-bg);border-radius:var(--radius-sm) 10px 0 0}.pm-payslip-row{font-size:.85rem;border-bottom:1px solid #f1f5f9;transition:background .15s}.pm-payslip-row:hover{background:var(--glass-bg)}.pm-emp-name{font-weight:700;color:var(--text-dark)}.pm-amount{font-weight:600}.pm-deduction{color:var(--danger-color)}.pm-net{color:var(--success-color);font-weight:600}.pm-status-badge{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:3px 10px;border-radius:var(--radius-md)}.pm-status-draft{background:#9a67001a;color:var(--warning-color)}.pm-status-finalized{background:#1a7f371a;color:var(--success-color)}.pm-finalize-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,#059669,#10b981);color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .2s}.pm-finalize-btn:hover:not(:disabled){box-shadow:none}.pm-finalize-btn:disabled{opacity:.6;cursor:not-allowed}.pm-head-form{background:var(--glass-bg);border:1px solid #f1f5f9;border-radius:var(--radius-sm);padding:1.25rem;box-shadow:0 1px 3px #0000000a;margin-bottom:1.5rem}.pm-head-form-grid{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.pm-head-form-grid input,.pm-head-form-grid select{padding:8px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text-dark);background:var(--glass-bg)}.pm-head-form-grid input:focus,.pm-head-form-grid select:focus{outline:none;border-color:var(--primary-color);background:var(--glass-bg)}.pm-head-form-grid input[type=number]{width:100px}.pm-lop-check{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--text-light);cursor:pointer}.pm-head-form-actions{display:flex;gap:8px}.pm-save-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s}.pm-save-btn:hover:not(:disabled){box-shadow:0 2px 8px var(--primary-glow)}.pm-save-btn:disabled{opacity:.6;cursor:not-allowed}.pm-cancel-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--text-light);font-size:.82rem;font-weight:600;cursor:pointer}.pm-heads-list{display:flex;flex-direction:column;gap:10px}.pm-head-card{display:flex;align-items:center;justify-content:space-between;background:var(--glass-bg);border:1px solid #f1f5f9;border-radius:var(--radius-sm);padding:12px 16px;transition:all .2s;box-shadow:0 1px 3px #0000000a}.pm-head-card:hover{border-color:var(--glass-border);box-shadow:0 4px 12px #0000000f}.pm-head-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pm-head-name{font-weight:700;font-size:.9rem;color:var(--text-dark)}.pm-head-type{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 10px;border-radius:var(--radius-md)}.pm-head-type-earning{background:#10b98114;color:var(--success-color)}.pm-head-type-deduction{background:#ef444414;color:var(--danger-color)}.pm-head-calc{font-size:.82rem;color:var(--text-light);font-weight:500}.pm-head-lop{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm);background:#ef444414;color:var(--danger-color)}.pm-head-actions{display:flex;gap:6px}.pm-head-actions button{padding:6px;border:none;border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--text-light);cursor:pointer;transition:all .15s}.pm-head-actions button:hover{background:var(--glass-bg-subtle);color:var(--text-dark)}.pm-struct-selector{margin-bottom:1.5rem}.pm-struct-selector select{width:100%;padding:10px 14px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-dark);background:var(--glass-bg);font-weight:600}.pm-struct-selector select:focus{outline:none;border-color:var(--primary-color);background:var(--glass-bg)}.pm-struct-editor{display:flex;flex-direction:column;gap:16px}.pm-struct-info{font-size:.82rem;color:var(--text-light);font-weight:600;padding:8px 14px;background:var(--glass-bg);border-radius:var(--radius-sm)}.pm-struct-components{display:flex;flex-direction:column;gap:10px}.pm-struct-row{display:flex;gap:10px;align-items:center}.pm-struct-row select{flex:2;padding:8px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text-dark);background:var(--glass-bg)}.pm-struct-row input{flex:1;padding:8px 12px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text-dark);background:var(--glass-bg)}.pm-struct-row select:focus,.pm-struct-row input:focus{outline:none;border-color:var(--primary-color);background:var(--glass-bg)}.pm-struct-remove{padding:8px;border:none;border-radius:var(--radius-sm);background:#ef444414;color:var(--danger-color);cursor:pointer;transition:all .15s}.pm-struct-remove:hover{background:#ef44441f}.pm-struct-add{display:flex;align-items:center;gap:6px;padding:8px 14px;border:2px dashed #e2e8f0;border-radius:var(--radius-sm);background:transparent;color:var(--text-light);font-size:.82rem;font-weight:600;cursor:pointer;align-self:flex-start}.pm-struct-add:hover{border-color:var(--primary-color);color:var(--primary-color)}[data-theme=dark] .pm-title{color:var(--border-subtle)}[data-theme=dark] .pm-subtitle{color:var(--text-light)}[data-theme=dark] .pm-tab-btn{background:#1e293b;border-color:var(--text-dark);color:var(--text-muted)}[data-theme=dark] .pm-tab-btn:hover{border-color:var(--text-dark);color:var(--border-color)}[data-theme=dark] .pm-head-form{background:#1e293b;border-color:var(--text-dark)}[data-theme=dark] .pm-head-form-grid input,[data-theme=dark] .pm-head-form-grid select{background:#0f172a;border-color:var(--text-dark);color:var(--border-color)}[data-theme=dark] .pm-head-card{background:#1e293b;border-color:var(--text-dark)}[data-theme=dark] .pm-head-card:hover{border-color:var(--text-dark)}[data-theme=dark] .pm-head-name{color:var(--border-subtle)}[data-theme=dark] .pm-head-actions button{background:#334155;color:var(--text-muted)}[data-theme=dark] .pm-head-actions button:hover{background:#475569;color:var(--border-color)}[data-theme=dark] .pm-period-selector select,[data-theme=dark] .pm-period-selector input{background:#0f172a;border-color:var(--text-dark);color:var(--border-color)}[data-theme=dark] .pm-payslip-header-row{background:#0f172a;border-color:var(--text-dark);color:var(--text-muted)}[data-theme=dark] .pm-payslip-row{border-color:var(--text-dark)}[data-theme=dark] .pm-payslip-row:hover{background:#1e293b}[data-theme=dark] .pm-emp-name{color:var(--border-subtle)}[data-theme=dark] .pm-struct-selector select{background:#0f172a;border-color:var(--text-dark);color:var(--border-color)}[data-theme=dark] .pm-struct-info{background:#0f172a;color:var(--text-muted)}[data-theme=dark] .pm-struct-row select,[data-theme=dark] .pm-struct-row input{background:#0f172a;border-color:var(--text-dark);color:var(--border-color)}[data-theme=dark] .pm-cancel-btn{background:#1e293b;border-color:var(--text-dark);color:var(--text-muted)}.announcement-manager{padding:24px;max-width:900px;margin:0 auto}.announcement-manager h2{font-size:1.4rem;font-weight:700;color:var(--text-dark);margin:0 0 4px}.announcement-manager-subtitle{font-size:.9rem;color:var(--text-light);margin:0 0 28px}.ann-create-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:24px;margin-bottom:32px}.ann-create-card h3{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 20px}.ann-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ann-form-full{grid-column:1 / -1}.ann-form-group{display:flex;flex-direction:column;gap:6px}.ann-form-group label{font-size:.82rem;font-weight:600;color:var(--text-dark);text-transform:uppercase;letter-spacing:.04em}.ann-form-group input[type=text],.ann-form-group textarea,.ann-form-group select{border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:10px 12px;font-size:.95rem;color:var(--text-dark);background:var(--glass-bg);width:100%;box-sizing:border-box;transition:border-color .15s}.ann-form-group input[type=text]:focus,.ann-form-group textarea:focus,.ann-form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.ann-form-group textarea{resize:vertical;min-height:90px}.ann-file-label{display:flex;align-items:center;gap:10px;border:1px dashed var(--glass-border);border-radius:var(--radius-sm);padding:12px 14px;cursor:pointer;font-size:.9rem;color:var(--text-light);transition:border-color .15s}.ann-file-label:hover{border-color:var(--primary-color);color:var(--primary-color)}.ann-file-label input[type=file]{display:none}.ann-image-preview-wrap{display:flex;flex-direction:column;gap:8px}.ann-file-preview{max-height:180px;border-radius:var(--radius-sm);object-fit:contain;border:1px solid var(--glass-border);align-self:flex-start}.btn-clear-image{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:4px 10px;font-size:.82rem;color:var(--text-light);cursor:pointer;align-self:flex-start;transition:color .15s,border-color .15s}.btn-clear-image:hover{color:var(--danger-color);border-color:var(--danger-color)}.ann-form-actions{display:flex;justify-content:flex-end;margin-top:20px}.btn-create-ann{background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);padding:10px 28px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s;display:flex;align-items:center}.btn-create-ann:hover{background:var(--primary-color)}.btn-create-ann:disabled{opacity:.6;cursor:not-allowed}.ann-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ann-list-header h3{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0}.ann-list{display:flex;flex-direction:column;gap:12px}.ann-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:16px 20px;display:flex;align-items:flex-start;gap:16px}.ann-item.expired{opacity:.55}.ann-item-thumb{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;border:1px solid var(--glass-border)}.ann-item-body{flex:1;min-width:0}.ann-item-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.ann-item-title{font-weight:700;font-size:.95rem;color:var(--text-dark)}.ann-type-badge{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md);background:#0969da14;color:var(--primary-dark)}.ann-status-badge{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md)}.ann-status-badge.active{background:#10b9811f;color:var(--success-color)}.ann-status-badge.expired{background:var(--glass-bg);color:var(--text-light)}.ann-item-meta{font-size:.8rem;color:var(--text-light);margin-top:4px}.ann-item-preview{font-size:.85rem;color:var(--text-dark);margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:500px;opacity:.75}.btn-ann-delete{background:none;border:1px solid var(--danger-color);color:var(--danger-color);border-radius:var(--radius-sm);padding:5px 12px;font-size:.82rem;cursor:pointer;flex-shrink:0;transition:background .15s}.btn-ann-delete:hover{background:#ef444414}.ann-empty{text-align:center;padding:48px 24px;color:var(--text-light);font-size:.95rem;border:1px dashed var(--glass-border);border-radius:var(--radius-sm)}[data-theme=dark] .ann-create-card,[data-theme=dark] .ann-item{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}[data-theme=dark] .ann-form-group input[type=text],[data-theme=dark] .ann-form-group textarea,[data-theme=dark] .ann-form-group select{background:var(--glass-bg)}[data-theme=dark] .ann-type-badge{background:#8b5cf633;color:var(--primary-color)}[data-theme=dark] .ann-status-badge.active{background:#34d39926;color:#34d399}@media (max-width: 600px){.ann-form-grid{grid-template-columns:1fr}.ann-form-full{grid-column:1}}.ac-page{min-height:100vh;background:var(--bg-page);display:flex;flex-direction:column}.ac-view{padding:1rem 0 0;display:flex;flex-direction:column;gap:0}.ac-body{flex:1;padding:1.25rem 1.5rem;max-width:1100px;width:100%;margin:0 auto}.ac-header{margin-bottom:1rem}.ac-header h1{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}.ac-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1.25rem}.ac-stat{background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.875rem 1rem;box-shadow:var(--shadow-sm)}.ac-stat.ac-stat-warn{border-color:#d29922;background:#fff8c5}[data-theme=dark] .ac-stat.ac-stat-warn{border-color:var(--warning-color);background:#d299221a}.ac-stat-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.ac-stat-value{font-size:1.5rem;font-weight:600;color:var(--text-dark);line-height:1}.ac-stat-amount{font-size:1.125rem}.ac-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.ac-tab{padding:.5rem 1rem;border:none;background:none;cursor:pointer;font-size:.8125rem;font-weight:500;color:var(--text-light);border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;align-items:center;gap:.35rem;transition:all .15s;white-space:nowrap;font-family:inherit}.ac-tab:hover{color:var(--text-dark)}.ac-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.ac-panel{background:var(--bg-card);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm)}.ac-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;border-bottom:1px solid var(--border-color);background:var(--bg-subtle);gap:.75rem}.ac-filter-group{display:flex;gap:.375rem}.ac-filter-btn{padding:.2rem .625rem;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-card);color:var(--text-light);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.ac-filter-btn:hover{color:var(--text-dark);border-color:var(--primary-color)}.ac-filter-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff;font-weight:500}.ac-loading{display:flex;align-items:center;gap:.75rem;padding:2rem 1.25rem;color:var(--text-light);font-size:.8125rem}.ac-spinner{width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:ac-spin .7s linear infinite;flex-shrink:0}.ac-spinner-sm{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:ac-spin .7s linear infinite}@keyframes ac-spin{to{transform:rotate(360deg)}}.ac-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1.25rem;color:var(--text-muted);font-size:.8125rem}.ac-empty p{margin:0}.ac-badge{font-size:.6875rem;font-weight:500;padding:.1rem .5rem;border-radius:999px;white-space:nowrap;display:inline-flex;align-items:center;gap:3px;border:1px solid transparent}.ac-badge-unpaid{background:#9a67001a;color:var(--warning-color);border-color:#9a670033}.ac-badge-partial{background:#cf222e14;color:#bc4c00;border-color:#cf222e26}.ac-badge-paid{background:#1a7f371a;color:var(--success-color);border-color:#1a7f3733}.ac-badge-overdue{background:#cf222e1a;color:var(--danger-color);border-color:#cf222e33}.ac-badge-muted{background:var(--bg-subtle);color:var(--text-muted);border-color:var(--border-subtle)}.ac-badge-approved{background:#1a7f371a;color:var(--success-color);border-color:#1a7f3733}.ac-badge-rejected{background:#cf222e1a;color:var(--danger-color);border-color:#cf222e33}.ac-btn{display:inline-flex;align-items:center;gap:4px;padding:.3125rem .75rem;height:28px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;background:var(--bg-card);color:var(--text-dark)}.ac-btn:disabled{opacity:.55;cursor:not-allowed}.ac-btn-sm{padding:.2rem .5rem;font-size:.75rem;height:24px}.ac-btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.ac-btn-primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.ac-btn-approve{background:var(--success-color);color:#fff;border-color:var(--success-color)}.ac-btn-approve:hover:not(:disabled){opacity:.9;box-shadow:none}.ac-btn-reject{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.ac-btn-reject:hover:not(:disabled){opacity:.9;box-shadow:none}.ac-btn-ghost{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.ac-btn-ghost:hover:not(:disabled){background:var(--primary-color);color:#fff}.ac-pdf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#01040999;z-index:1200;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto}.ac-pdf-modal{background:var(--bg-page);border-radius:var(--radius-sm);width:100%;max-width:860px;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);border:1px solid var(--border-color)}.ac-pdf-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;background:var(--bg-subtle);border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom:1px solid var(--border-color);gap:1rem}.ac-pdf-title{font-size:.875rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ac-pdf-actions{display:flex;gap:.5rem;flex-shrink:0}.ac-pdf-scroll{overflow-y:auto;padding:1rem;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.ac-pdf-scroll>div{box-shadow:var(--shadow-sm);border-radius:4px;overflow:hidden}.ac-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-light);cursor:pointer;transition:all .15s}.ac-icon-btn:hover{color:var(--text-dark);border-color:var(--primary-color);background:var(--bg-subtle)}.ac-invoice-row{border-bottom:1px solid var(--border-color)}.ac-invoice-row:last-child{border-bottom:none}.ac-invoice-row.expanded{background:var(--bg-subtle)}.ac-invoice-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;cursor:pointer;transition:background .1s}.ac-invoice-summary:hover{background:var(--bg-subtle)}.ac-invoice-main{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.ac-inv-number{font-size:.8125rem;font-weight:600;color:var(--primary-color);white-space:nowrap}.ac-inv-client{font-size:.875rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ac-overdue-tag{display:inline-flex;align-items:center;gap:3px;font-size:.6875rem;font-weight:500;color:var(--danger-color);background:#cf222e1a;padding:.1rem .5rem;border-radius:999px;white-space:nowrap;border:1px solid rgba(207,34,46,.2)}.ac-invoice-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.ac-inv-amount{font-size:.875rem;font-weight:600;color:var(--text-dark);white-space:nowrap}.ac-inv-due{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:3px;white-space:nowrap}.ac-chevron{color:var(--text-muted);display:flex}.ac-cp-panel{border-top:1px solid var(--border-color);padding:.875rem 1rem 1rem;background:var(--bg-subtle);backdrop-filter:none;-webkit-backdrop-filter:none}.ac-cp-table{width:100%}.ac-cp-header-row{display:grid;grid-template-columns:1fr 100px 50px 120px 110px;gap:.5rem;padding:0 0 .375rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color);margin-bottom:.25rem}.ac-cp-row{display:grid;grid-template-columns:1fr 100px 50px 120px 110px;gap:.5rem;align-items:center;padding:.4rem 0;border-bottom:1px solid var(--border-subtle);font-size:.8125rem}.ac-cp-row:last-child{border-bottom:none}.ac-cp-row.paid{opacity:.6}.ac-cp-name{font-weight:500;color:var(--text-dark)}.ac-cp-amount{font-weight:600;color:var(--text-dark)}.ac-cp-pct{color:var(--text-muted)}.ac-cp-by{font-size:.6875rem;color:var(--text-muted);margin-left:3px}.ac-cp-create{padding-top:.25rem}.ac-cp-create-hint{margin:0 0 .75rem;font-size:.8125rem;color:var(--text-light)}.ac-cp-form{display:flex;flex-direction:column;gap:.5rem;max-width:320px}.ac-cp-form-row{display:flex;align-items:center;gap:.5rem}.ac-cp-form-label{font-size:.8125rem;font-weight:500;color:var(--text-dark);flex:1}.ac-cp-pct-input{width:60px;padding:.25rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;background:var(--bg-card);color:var(--text-dark);text-align:right;font-family:inherit;box-shadow:var(--shadow-sm)}.ac-cp-pct-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.ac-cp-pct-sym{font-size:.8125rem;color:var(--text-muted)}.ac-reimb-list{display:flex;flex-direction:column}.ac-reimb-card{padding:.875rem 1rem;border-bottom:1px solid var(--border-color);transition:background .1s}.ac-reimb-card:last-child{border-bottom:none}.ac-reimb-card.actionable:hover{background:var(--bg-subtle)}.ac-reimb-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.ac-reimb-user{display:flex;align-items:center;gap:.5rem}.ac-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary-color);color:#fff;font-size:.8125rem;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ac-reimb-name{font-size:.875rem;font-weight:600;color:var(--text-dark)}.ac-reimb-dept{font-size:.75rem;color:var(--text-muted)}.ac-reimb-details{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;margin-bottom:.375rem}.ac-reimb-cat{font-size:.6875rem;font-weight:500;padding:.1rem .5rem;border-radius:999px;background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-subtle);text-transform:uppercase;letter-spacing:.03em}.ac-reimb-amount{font-size:.9375rem;font-weight:600;color:var(--text-dark)}.ac-reimb-date{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:3px}.ac-reimb-desc{font-size:.8125rem;color:var(--text-light);margin-bottom:.375rem}.ac-reimb-receipt{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--primary-color);text-decoration:none;margin-bottom:.5rem}.ac-reimb-receipt:hover{text-decoration:underline}.ac-actions{margin-top:.5rem}.ac-reject-input{display:flex;align-items:center;gap:.5rem;background:#cf222e0f;border:1px solid rgba(207,34,46,.2);border-radius:var(--radius-sm);padding:.375rem .625rem;margin-bottom:.5rem;color:var(--danger-color)}.ac-reject-input input{border:none;background:transparent;outline:none;font-size:.8125rem;color:var(--text-dark);flex:1;font-family:inherit}.ac-action-btns{display:flex;gap:.375rem;flex-wrap:wrap}.ac-paid-note{display:flex;align-items:center;gap:5px;font-size:.75rem;color:var(--primary-color);background:#0969da0f;border:1px solid rgba(9,105,218,.2);border-radius:var(--radius-sm);padding:4px 8px;margin-top:.375rem}.ac-reject-note{font-size:.75rem;color:var(--danger-color);background:#cf222e0f;border:1px solid rgba(207,34,46,.2);border-radius:var(--radius-sm);padding:4px 8px;margin-top:.375rem}@media (max-width: 700px){.ac-body{padding:.75rem}.ac-invoice-summary{flex-direction:column;align-items:flex-start;gap:.5rem}.ac-invoice-meta{justify-content:flex-start}.ac-cp-header-row,.ac-cp-row{grid-template-columns:1fr 80px 40px}.ac-cp-header-row span:nth-child(4),.ac-cp-header-row span:nth-child(5),.ac-cp-row span:nth-child(4),.ac-cp-row span:nth-child(5){display:none}}[data-theme=dark] .ac-badge-unpaid{background:#d2992226;color:#e3b341;border-color:#d299224d}[data-theme=dark] .ac-badge-partial{background:#cf222e1f;color:#ff7b72;border-color:#cf222e33}[data-theme=dark] .ac-badge-paid{background:#3fb9501f;color:#3fb950;border-color:#3fb95033}[data-theme=dark] .ac-badge-overdue{background:#ff7b721f;color:#ff7b72;border-color:#ff7b7233}[data-theme=dark] .ac-badge-approved{background:#3fb9501f;color:#3fb950;border-color:#3fb95033}[data-theme=dark] .ac-badge-rejected{background:#ff7b721f;color:#ff7b72;border-color:#ff7b7233}[data-theme=dark] .ac-reject-input{background:#ff7b7214;border-color:#ff7b7233}[data-theme=dark] .ac-reject-note{background:#ff7b7214;border-color:#ff7b7233;color:#ff7b72}[data-theme=dark] .ac-paid-note{background:#58a6ff14;border-color:#58a6ff33;color:#58a6ff}[data-theme=dark] .ac-invoice-row.expanded{background:var(--bg-subtle)}.ac-select{padding:.25rem .5rem;height:28px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-dark);font-size:.8125rem;cursor:pointer;font-family:inherit;box-shadow:var(--shadow-sm)}.ac-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}.ac-payslip-table{width:100%;overflow-x:auto}.ac-ps-header,.ac-ps-row,.ac-ps-summary{display:grid;grid-template-columns:1.4fr 1fr 90px 55px 100px 110px 100px 90px;gap:.5rem;align-items:center;padding:.5rem 1rem}.ac-ps-header{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-color);background:var(--bg-subtle)}.ac-ps-row{border-bottom:1px solid var(--border-subtle);font-size:.8125rem;transition:background .1s}.ac-ps-row:last-of-type{border-bottom:none}.ac-ps-row:hover{background:var(--bg-subtle)}.ac-ps-name{font-weight:600;color:var(--text-dark)}.ac-ps-dept{color:var(--text-muted);font-size:.75rem}.ac-ps-period{color:var(--text-light)}.ac-ps-days{color:var(--text-muted)}.ac-ps-gross{font-weight:600;color:var(--text-dark)}.ac-ps-deductions{color:var(--danger-color)}.ac-ps-net{font-weight:600;color:var(--success-color)}.ac-ps-summary{border-top:2px solid var(--border-color);background:var(--bg-subtle);font-size:.8125rem;font-weight:600;color:var(--text-dark)}@media (max-width: 700px){.ac-ps-header,.ac-ps-row,.ac-ps-summary{grid-template-columns:1.2fr 80px 80px 80px}.ac-ps-header span:nth-child(2),.ac-ps-header span:nth-child(3),.ac-ps-header span:nth-child(4),.ac-ps-row span:nth-child(2),.ac-ps-row span:nth-child(3),.ac-ps-row span:nth-child(4){display:none}}.task-pool{padding:24px 28px 60px;max-width:1400px;margin:0 auto;color:#1f2937}.tp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.tp-header h1{margin:0;font-size:26px;font-weight:700;color:#111827}.tp-subtitle{margin:4px 0 0;color:#6b7280;font-size:14px}.tp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.tp-stat{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 2px #0000000a}.tp-stat-num{font-size:22px;font-weight:700;color:#111827}.tp-stat-label{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.tp-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.tp-filter-btn{background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500;color:#4b5563;cursor:pointer;transition:all .15s ease}.tp-filter-btn:hover{border-color:#6366f1;color:#4338ca}.tp-filter-btn.active{background:#4f46e5;border-color:#4f46e5;color:#fff}.tp-empty{padding:60px 20px;text-align:center;color:#9ca3af;font-size:14px;background:#f9fafb;border:1px dashed #e5e7eb;border-radius:12px}.tp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.tp-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 3px #0000000d;transition:box-shadow .18s ease,transform .18s ease}.tp-card:hover{box-shadow:0 6px 18px #00000014;transform:translateY(-1px)}.tp-card--open{border-left:4px solid #10b981}.tp-card--pending_approval{border-left:4px solid #f59e0b}.tp-card--claimed{border-left:4px solid #3b82f6}.tp-card--completed{border-left:4px solid #9ca3af;opacity:.85}.tp-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.tp-status-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.tp-status-open{background:#d1fae5;color:#047857}.tp-status-pending_approval{background:#fef3c7;color:#92400e}.tp-status-claimed{background:#dbeafe;color:#1d4ed8}.tp-status-completed{background:#e5e7eb;color:#374151}.tp-urgency{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;background:#f3f4f6;color:#4b5563}.tp-urgency-1{background:#f1f5f9;color:#475569}.tp-urgency-2{background:#ecfeff;color:#0e7490}.tp-urgency-3{background:#fef9c3;color:#854d0e}.tp-urgency-4{background:#ffedd5;color:#c2410c}.tp-urgency-5{background:#fee2e2;color:#b91c1c}.tp-card-title{margin:2px 0 0;font-size:16px;font-weight:600;color:#111827;line-height:1.35}.tp-card-desc{margin:0;font-size:13px;color:#4b5563;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tp-card-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#6b7280}.tp-meta-item{display:inline-flex;align-items:center;gap:4px}.tp-tag-row{display:flex;flex-wrap:wrap;gap:6px}.tp-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:999px;background:#f3f4f6;color:#4b5563}.tp-tag--warning{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.tp-tag--info{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}.tp-claimed-by{font-size:12px;color:#6b7280;padding:6px 10px;background:#f9fafb;border-radius:6px}.tp-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:all .15s ease;background:#fff;color:#374151}.tp-btn:hover{transform:translateY(-1px)}.tp-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.tp-btn--primary{background:#4f46e5;border-color:#4f46e5;color:#fff}.tp-btn--primary:hover{background:#4338ca;border-color:#4338ca}.tp-btn--success{background:#10b981;border-color:#10b981;color:#fff}.tp-btn--success:hover{background:#059669;border-color:#059669}.tp-btn--danger{background:#ef4444;border-color:#ef4444;color:#fff}.tp-btn--danger:hover{background:#dc2626;border-color:#dc2626}.tp-btn--ghost{background:transparent;border-color:#d1d5db;color:#4b5563}.tp-btn--ghost:hover{background:#f3f4f6}.tp-btn--icon{padding:7px 9px;background:#f3f4f6;border-color:#e5e7eb;color:#4b5563}.tp-btn--icon:hover{background:#e5e7eb}.tp-btn--icon.tp-btn--danger{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.tp-btn--icon.tp-btn--danger:hover{background:#fee2e2}.tp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;justify-content:center;align-items:flex-start;padding:60px 20px;z-index:1000;overflow-y:auto}.tp-modal{background:#fff;border-radius:14px;width:100%;max-width:620px;box-shadow:0 20px 50px #00000040;overflow:hidden}.tp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #e5e7eb}.tp-modal-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.tp-modal-close{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:6px;border-radius:6px;display:flex}.tp-modal-close:hover{background:#f3f4f6;color:#111827}.tp-form{padding:20px 22px 22px;display:flex;flex-direction:column;gap:14px}.tp-field{display:flex;flex-direction:column;gap:6px}.tp-field>span{font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.03em}.tp-field input[type=text],.tp-field input[type=date],.tp-field select,.tp-field textarea{padding:9px 11px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.tp-field input:focus,.tp-field select:focus,.tp-field textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.tp-field textarea{resize:vertical;min-height:90px}.tp-form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tp-checkbox{display:flex;align-items:center;gap:9px;font-size:13px;color:#374151;cursor:pointer;padding:8px 10px;border-radius:8px;background:#f9fafb}.tp-checkbox:hover{background:#f3f4f6}.tp-checkbox input{width:16px;height:16px;cursor:pointer}.tp-checkbox span{display:inline-flex;align-items:center;gap:6px}.tp-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}@media (max-width: 720px){.tp-stats{grid-template-columns:repeat(2,1fr)}.tp-form-row{grid-template-columns:1fr}}[data-theme=dark] .task-pool,[data-theme=dark] .tp-header h1{color:var(--text-dark)}[data-theme=dark] .tp-subtitle{color:var(--text-light)}[data-theme=dark] .tp-stat{background:var(--bg-card);border-color:var(--border-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .tp-stat-num{color:var(--text-dark)}[data-theme=dark] .tp-stat-label{color:var(--text-light)}[data-theme=dark] .tp-filter-btn{background:var(--bg-card);border-color:var(--border-color);color:var(--text-light)}[data-theme=dark] .tp-filter-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}[data-theme=dark] .tp-filter-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}[data-theme=dark] .tp-empty{background:var(--bg-subtle);border-color:var(--border-color);color:var(--text-muted)}[data-theme=dark] .tp-card{background:var(--bg-card);border-color:var(--border-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .tp-card:hover{box-shadow:var(--shadow-md)}[data-theme=dark] .tp-card-title{color:var(--text-dark)}[data-theme=dark] .tp-card-desc{color:var(--text-light)}[data-theme=dark] .tp-card-meta{color:var(--text-muted)}[data-theme=dark] .tp-status-open{background:#2ea0432e;color:#3fb950}[data-theme=dark] .tp-status-pending_approval{background:#bb800933;color:#d29922}[data-theme=dark] .tp-status-claimed{background:#388bfd33;color:#58a6ff}[data-theme=dark] .tp-status-completed{background:#8b949e33;color:#c9d1d9}[data-theme=dark] .tp-urgency{background:var(--bg-inset);color:var(--text-light)}[data-theme=dark] .tp-urgency-1{background:#8b949e26;color:#8b949e}[data-theme=dark] .tp-urgency-2{background:#388bfd26;color:#79c0ff}[data-theme=dark] .tp-urgency-3{background:#bb80092e;color:#d29922}[data-theme=dark] .tp-urgency-4{background:#db6d2833;color:#f0883e}[data-theme=dark] .tp-urgency-5{background:#f851492e;color:#ff7b72}[data-theme=dark] .tp-tag{background:var(--bg-inset);color:var(--text-light)}[data-theme=dark] .tp-tag--warning{background:#f8514926;color:#ff7b72;border-color:#f8514959}[data-theme=dark] .tp-tag--info{background:#58a6ff26;color:#79c0ff;border-color:#58a6ff59}[data-theme=dark] .tp-claimed-by{background:var(--bg-inset);color:var(--text-light)}[data-theme=dark] .tp-btn{background:var(--bg-card);color:var(--text-dark);border-color:var(--border-color)}[data-theme=dark] .tp-btn--primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}[data-theme=dark] .tp-btn--primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}[data-theme=dark] .tp-btn--success{background:#238636;border-color:#238636;color:#fff}[data-theme=dark] .tp-btn--success:hover{background:#2ea043;border-color:#2ea043}[data-theme=dark] .tp-btn--danger{background:#da3633;border-color:#da3633;color:#fff}[data-theme=dark] .tp-btn--danger:hover{background:#f85149;border-color:#f85149}[data-theme=dark] .tp-btn--ghost{background:transparent;border-color:var(--border-color);color:var(--text-light)}[data-theme=dark] .tp-btn--ghost:hover{background:var(--bg-card-hover)}[data-theme=dark] .tp-btn--icon{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-light)}[data-theme=dark] .tp-btn--icon:hover{background:var(--bg-card-hover)}[data-theme=dark] .tp-btn--icon.tp-btn--danger{background:#f851491f;color:#ff7b72;border-color:#f8514959}[data-theme=dark] .tp-btn--icon.tp-btn--danger:hover{background:#f8514933}[data-theme=dark] .tp-modal-overlay{background:#010409bf}[data-theme=dark] .tp-modal{background:var(--bg-card);box-shadow:var(--shadow-xl);border:1px solid var(--border-color)}[data-theme=dark] .tp-modal-header{border-bottom-color:var(--border-color)}[data-theme=dark] .tp-modal-header h2{color:var(--text-dark)}[data-theme=dark] .tp-modal-close{color:var(--text-light)}[data-theme=dark] .tp-modal-close:hover{background:var(--bg-card-hover);color:var(--text-dark)}[data-theme=dark] .tp-field>span{color:var(--text-light)}[data-theme=dark] .tp-field input[type=text],[data-theme=dark] .tp-field input[type=date],[data-theme=dark] .tp-field select,[data-theme=dark] .tp-field textarea{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .tp-field input:focus,[data-theme=dark] .tp-field select:focus,[data-theme=dark] .tp-field textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}[data-theme=dark] .tp-checkbox{background:var(--bg-inset);color:var(--text-light)}[data-theme=dark] .tp-checkbox:hover{background:var(--bg-card-hover)}.dept-container{padding:0 .5rem;max-width:1200px;margin:0 auto;animation:fadeIn .4s ease-out}.dept-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;height:300px;gap:1rem;color:var(--text-light)}.dept-loading .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dept-header{margin-bottom:1.5rem}.dept-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.dept-title-row h1{font-size:1.25rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}.dept-subtitle{font-size:.85rem;color:var(--text-light);margin:0}.dept-create-btn{display:flex;align-items:center;gap:.4rem;padding:.6rem 1.1rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s}.dept-create-btn:hover{background:var(--primary-hover, #0550ae)}.dept-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;gap:.75rem;color:var(--text-light);text-align:center}.dept-empty h3{color:var(--text-dark);margin:0}.dept-empty p{margin:0;font-size:.9rem}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem}.dept-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg, 12px);overflow:hidden;transition:box-shadow .2s}.dept-card:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.08))}.dept-card__header{padding:1rem 1.15rem;border-bottom:1px solid var(--border-color)}.dept-card__title-row{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.dept-card__title-row h3{font-size:1rem;font-weight:650;color:var(--text-dark);margin:0}.dept-card__count{font-size:.78rem;color:var(--text-light);background:var(--bg-secondary, #f0f2f5);padding:.2rem .6rem;border-radius:20px;font-weight:500}.dept-card__desc{font-size:.82rem;color:var(--text-light);margin:.35rem 0 0}.dept-card__actions{display:flex;gap:.35rem;margin-top:.6rem}.dept-card__edit-form{display:flex;flex-direction:column;gap:.5rem}.dept-card__edit-actions{display:flex;gap:.35rem}.dept-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);background:var(--bg-card);color:var(--text-light);cursor:pointer;transition:all .15s}.dept-icon-btn:hover{background:var(--bg-secondary, #f0f2f5);color:var(--text-dark)}.dept-icon-btn--danger:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.dept-icon-btn--save:hover{background:#d1fae5;color:#059669;border-color:#6ee7b7}.dept-input{width:100%;padding:.55rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);background:var(--bg-primary, #fff);color:var(--text-dark);font-size:.88rem;outline:none;transition:border-color .2s;box-sizing:border-box}.dept-input:focus{border-color:var(--primary-color)}.dept-add-member{border-bottom:1px solid var(--border-color);background:var(--bg-secondary, #fafbfc)}.dept-add-member__search{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid var(--border-color)}.dept-add-member__search input{flex:1;border:none;background:transparent;color:var(--text-dark);font-size:.85rem;outline:none}.dept-add-member__list{max-height:200px;overflow-y:auto}.dept-add-member__item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.84rem;color:var(--text-dark);text-align:left;transition:background .15s}.dept-add-member__item:hover{background:var(--bg-card)}.dept-add-member__name{flex:1;font-weight:500}.dept-add-member__role{font-size:.75rem;color:var(--text-light);text-transform:capitalize}.dept-add-member__dept{font-size:.72rem;color:var(--primary-color);background:var(--bg-card);padding:.1rem .4rem;border-radius:4px}.dept-add-member__empty{padding:1rem;text-align:center;font-size:.84rem;color:var(--text-light)}.dept-members{padding:.5rem 0}.dept-member{display:flex;align-items:center;gap:.6rem;padding:.45rem 1.15rem;transition:background .15s}.dept-member:hover{background:var(--bg-secondary, #fafbfc)}.dept-member__avatar{width:30px;height:30px;min-width:30px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.dept-member__info{flex:1;display:flex;flex-direction:column}.dept-member__name{font-size:.85rem;font-weight:500;color:var(--text-dark)}.dept-member__role{font-size:.73rem;color:var(--text-light);text-transform:capitalize}.dept-member__remove{opacity:0;transition:opacity .15s}.dept-member:hover .dept-member__remove{opacity:1}.dept-modal{background:var(--bg-card);border-radius:var(--radius-lg, 12px);width:420px;max-width:95vw;box-shadow:var(--shadow-lg, 0 20px 60px rgba(0,0,0,.15));overflow:hidden}.dept-modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.15rem 1.25rem;border-bottom:1px solid var(--border-color)}.dept-modal__header h2{font-size:1.05rem;font-weight:650;color:var(--text-dark);margin:0}.dept-modal__body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.dept-modal__body label{display:flex;flex-direction:column;gap:.35rem;font-size:.84rem;font-weight:500;color:var(--text-dark)}.dept-modal__footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid var(--border-color)}.dept-btn{padding:.55rem 1.1rem;border-radius:var(--radius-sm, 6px);font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);transition:all .15s}.dept-btn--primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.dept-btn--primary:hover{background:var(--primary-hover, #0550ae)}.dept-btn--secondary{background:var(--bg-card);color:var(--text-dark)}.dept-btn--secondary:hover{background:var(--bg-secondary, #f0f2f5)}[data-theme=dark] .dept-card{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .dept-card__count,[data-theme=dark] .dept-add-member{background:var(--bg-tertiary, #2d333b)}[data-theme=dark] .dept-icon-btn{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .dept-icon-btn:hover{background:var(--bg-tertiary, #2d333b)}[data-theme=dark] .dept-icon-btn--danger:hover{background:#450a0a;color:#f87171;border-color:#7f1d1d}[data-theme=dark] .dept-icon-btn--save:hover{background:#064e3b;color:#6ee7b7;border-color:#065f46}[data-theme=dark] .dept-input{background:var(--bg-primary);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .dept-modal{background:var(--bg-card)}[data-theme=dark] .dept-member:hover{background:var(--bg-tertiary, #2d333b)}[data-theme=dark] .dept-add-member__item:hover{background:var(--bg-card)}[data-theme=dark] .dept-add-member__dept{background:var(--bg-tertiary, #2d333b)}@media (max-width: 640px){.dept-grid{grid-template-columns:1fr}}.dashboard{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-page)}.dashboard-nav{background:var(--bg-card);border-bottom:1px solid var(--border-color);padding:0 1.5rem;display:flex;gap:0;overflow-x:auto;scrollbar-width:none;backdrop-filter:none;-webkit-backdrop-filter:none}.dashboard-nav::-webkit-scrollbar{display:none}.dashboard-nav button{display:flex;align-items:center;gap:.4rem;padding:.75rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-light);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition);white-space:nowrap;letter-spacing:0;margin-bottom:-1px}.dashboard-nav button:hover{color:var(--text-dark);background:transparent}.dashboard-nav button.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600;text-shadow:none}.dashboard-content{flex:1;padding:1.5rem 2rem;max-width:1800px;width:100%;margin:0 auto}@media (max-width: 768px){.dashboard-nav{padding:0 .5rem}.dashboard-nav button{padding:.625rem .75rem;font-size:.75rem}.dashboard-content{padding:1rem}}.voice-call-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:vcFadeIn .2s ease}@keyframes vcFadeIn{0%{opacity:0}to{opacity:1}}.voice-call-card{position:relative;width:320px;padding:2.5rem 2rem 2rem;background:var(--bg-card, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-lg, 16px);box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;align-items:center;gap:1.5rem;animation:vcSlideUp .25s ease}@keyframes vcSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.voice-call-card__user{display:flex;flex-direction:column;align-items:center;gap:.5rem}.voice-call-card__avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color, #6366f1),var(--primary-hover, #4f46e5));color:#fff;font-size:1.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.voice-call-card__name{font-size:1.1rem;font-weight:600;color:var(--text-dark, #111827)}.voice-call-card__status{font-size:.8rem;color:var(--text-light, #6b7280);letter-spacing:.02em}.voice-call-card__ring{position:absolute;top:2.5rem;left:50%;transform:translate(-50%);width:72px;height:72px;border-radius:50%;border:2px solid var(--primary-color, #6366f1);animation:vcPulse 1.5s ease-in-out infinite;pointer-events:none}@keyframes vcPulse{0%{transform:translate(-50%) scale(1);opacity:.6}to{transform:translate(-50%) scale(1.8);opacity:0}}.voice-call-card__actions{display:flex;gap:1.25rem;align-items:center}.voice-call-btn{width:52px;height:52px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,box-shadow .15s,background .15s;color:#fff}.voice-call-btn:hover{transform:scale(1.08)}.voice-call-btn:active{transform:scale(.96)}.voice-call-btn--accept{background:#22c55e;box-shadow:0 4px 14px #22c55e66}.voice-call-btn--accept:hover{background:#16a34a}.voice-call-btn--reject{background:#ef4444;box-shadow:0 4px 14px #ef444466}.voice-call-btn--reject:hover{background:#dc2626}.voice-call-btn--mute{background:var(--glass-bg-strong, #f3f4f6);color:var(--text-dark, #111827);box-shadow:0 2px 8px #00000014}.voice-call-btn--mute:hover{background:var(--glass-bg, #e5e7eb)}.voice-call-btn--muted{background:#f59e0b;color:#fff;box-shadow:0 4px 14px #f59e0b66}.voice-call-btn--muted:hover{background:#d97706}.voice-call-btn--close{background:var(--glass-bg-strong, #f3f4f6);color:var(--text-dark, #111827)}.voice-call-btn--close:hover{background:var(--glass-bg, #e5e7eb)}.voice-call-card__error{font-size:.75rem;color:#ef4444;text-align:center}.msg-chat-header__call-btn{background:none;border:none;cursor:pointer;color:var(--primary-color, #6366f1);padding:6px;border-radius:var(--radius-sm, 6px);display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.msg-chat-header__call-btn:hover{background:var(--glass-bg-strong, #f3f4f6);color:var(--primary-hover, #4f46e5)}[data-theme=dark] .voice-call-overlay{background:#000000bf}[data-theme=dark] .voice-call-card{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .voice-call-card__name{color:var(--text-dark)}[data-theme=dark] .voice-call-card__status{color:var(--text-light)}[data-theme=dark] .voice-call-btn--mute{background:var(--glass-bg-strong);color:var(--text-dark)}[data-theme=dark] .voice-call-btn--mute:hover{background:var(--glass-bg)}[data-theme=dark] .voice-call-btn--close{background:var(--glass-bg-strong);color:var(--text-dark)}[data-theme=dark] .msg-chat-header__call-btn:hover{background:var(--glass-bg-strong)}.voice-caves{display:flex;flex-direction:column;border-top:1px solid var(--glass-border, #e5e7eb);padding-top:.25rem;overflow:hidden}.voice-caves__header{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem .25rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light, #6b7280)}.voice-caves__add-btn{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--text-light, #6b7280);padding:2px;border-radius:4px;display:flex;align-items:center;transition:color .15s,background .15s}.voice-caves__add-btn:hover{color:var(--text-dark, #111827);background:var(--glass-bg, #f3f4f6)}.voice-caves__create{display:flex;flex-direction:column;gap:.4rem;padding:.5rem .75rem}.voice-caves__create-actions{display:flex;align-items:center;gap:.35rem}.voice-caves__access-row{display:flex;align-items:center;gap:.4rem}.voice-caves__access-label{font-size:.72rem;font-weight:600;color:var(--text-light, #6b7280);white-space:nowrap}.voice-caves__access-select{flex:1;padding:.25rem .4rem;border:1px solid var(--glass-border, #e5e7eb);border-radius:var(--radius-sm, 6px);background:var(--glass-bg, #f9fafb);color:var(--text-dark, #111827);font-size:.74rem;outline:none;cursor:pointer}.voice-caves__access-select:focus{border-color:var(--primary-color, #6366f1)}.voice-caves__access-picker{max-height:140px;overflow-y:auto;border:1px solid var(--glass-border, #e5e7eb);border-radius:var(--radius-sm, 6px);background:var(--glass-bg, #f9fafb);padding:.25rem}.voice-caves__checkbox-item{display:flex;align-items:center;gap:.35rem;padding:.2rem .35rem;font-size:.76rem;color:var(--text-dark, #111827);cursor:pointer;border-radius:4px;transition:background .12s}.voice-caves__checkbox-item:hover{background:var(--glass-bg-strong, #eef2ff)}.voice-caves__checkbox-item input[type=checkbox]{width:13px;height:13px;cursor:pointer;accent-color:var(--primary-color, #6366f1)}.voice-caves__picker-count{margin-left:auto;font-size:.66rem;color:var(--text-light, #9ca3af)}.voice-caves__picker-empty{font-size:.73rem;color:var(--text-light, #9ca3af);padding:.35rem;display:block;text-align:center}.voice-cave__lock{display:flex;align-items:center;color:var(--text-light, #9ca3af);flex-shrink:0}.voice-caves__create-input{flex:1;padding:.3rem .5rem;border:1px solid var(--glass-border, #e5e7eb);border-radius:var(--radius-sm, 6px);background:var(--glass-bg, #f9fafb);color:var(--text-dark, #111827);font-size:.78rem;outline:none}.voice-caves__create-input:focus{border-color:var(--primary-color, #6366f1)}.voice-caves__create-btn{padding:.3rem .6rem;font-size:.72rem;font-weight:600;background:var(--primary-color, #6366f1);color:#fff;border:none;border-radius:var(--radius-sm, 6px);cursor:pointer;transition:background .15s}.voice-caves__create-btn:hover{background:var(--primary-hover, #4f46e5)}.voice-caves__create-cancel{background:none;border:none;cursor:pointer;color:var(--text-light);display:flex;padding:2px}.voice-caves__list{flex:1;overflow-y:auto;padding:.25rem .5rem}.voice-caves__empty{text-align:center;font-size:.75rem;color:var(--text-light, #6b7280);padding:1rem 0}.voice-cave{border-radius:var(--radius-sm, 6px);margin-bottom:.15rem;transition:background .12s}.voice-cave:hover{background:var(--glass-bg, #f3f4f6)}.voice-cave--joined{background:var(--glass-bg-strong, #eef2ff)}.voice-cave__header{display:flex;align-items:center;gap:.4rem;padding:.35rem .5rem;cursor:default}.voice-cave__icon{color:var(--text-light, #6b7280);display:flex;flex-shrink:0}.voice-cave--joined .voice-cave__icon{color:var(--primary-color, #6366f1)}.voice-cave__name{font-size:.82rem;font-weight:500;color:var(--text-dark, #111827);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-cave__count{font-size:.68rem;color:var(--text-light, #6b7280);min-width:14px;text-align:center}.voice-cave__join-btn{font-size:.68rem;font-weight:600;padding:.15rem .5rem;border:none;border-radius:999px;background:var(--primary-color, #6366f1);color:#fff;cursor:pointer;opacity:0;transition:opacity .15s,background .15s}.voice-cave:hover .voice-cave__join-btn{opacity:1}.voice-cave__join-btn:hover{background:var(--primary-hover, #4f46e5)}.voice-cave__delete-btn{background:none;border:none;cursor:pointer;color:var(--text-light, #9ca3af);padding:2px;display:flex;opacity:0;transition:opacity .15s,color .15s}.voice-cave:hover .voice-cave__delete-btn{opacity:1}.voice-cave__delete-btn:hover{color:#ef4444}.voice-cave__users{padding:.15rem .5rem .35rem 1.6rem;display:flex;flex-direction:column;gap:.25rem}.voice-cave__user{display:flex;align-items:center;gap:.4rem}.voice-cave__avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color, #6366f1),var(--primary-hover, #4f46e5));color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;overflow:hidden;transition:box-shadow .2s}.voice-cave__avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.voice-cave__user--speaking .voice-cave__avatar{box-shadow:0 0 0 2px #22c55e,0 0 8px #22c55e80}.voice-cave__speaking-ring{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid #22c55e;animation:speakPulse .8s ease-in-out infinite;pointer-events:none}@keyframes speakPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.12)}}.voice-cave__username{font-size:.75rem;color:var(--text-dark, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-cave__user--speaking .voice-cave__username{color:#22c55e;font-weight:600}.voice-caves__connected{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--glass-bg-strong, #eef2ff);border-top:1px solid var(--glass-border, #e5e7eb)}.voice-caves__connected-info{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-dark, #111827);min-width:0}.voice-caves__connected-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-caves__connected-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:dotPulse 1.5s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.4}}.voice-caves__connected-actions{display:flex;gap:.3rem}.voice-caves__mute-btn,.voice-caves__leave-btn{width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.voice-caves__mute-btn{background:var(--glass-bg, #f3f4f6);color:var(--text-dark, #111827)}.voice-caves__mute-btn:hover{background:var(--glass-border, #e5e7eb)}.voice-caves__mute-btn--muted{background:#f59e0b;color:#fff}.voice-caves__mute-btn--muted:hover{background:#d97706}.voice-caves__leave-btn{background:#ef4444;color:#fff}.voice-caves__leave-btn:hover{background:#dc2626}[data-theme=dark] .voice-caves{border-top-color:var(--glass-border)}[data-theme=dark] .voice-caves__header{color:var(--text-light)}[data-theme=dark] .voice-caves__add-btn:hover{color:var(--text-dark);background:var(--glass-bg)}[data-theme=dark] .voice-caves__create-input{background:var(--glass-bg);border-color:var(--glass-border);color:var(--text-dark)}[data-theme=dark] .voice-cave:hover{background:var(--glass-bg)}[data-theme=dark] .voice-cave--joined{background:var(--glass-bg-strong)}[data-theme=dark] .voice-cave__name,[data-theme=dark] .voice-cave__username{color:var(--text-dark)}[data-theme=dark] .voice-caves__connected{background:var(--glass-bg-strong);border-top-color:var(--glass-border)}[data-theme=dark] .voice-caves__connected-info{color:var(--text-dark)}[data-theme=dark] .voice-caves__mute-btn{background:var(--glass-bg);color:var(--text-dark)}[data-theme=dark] .voice-caves__mute-btn:hover{background:var(--glass-border)}[data-theme=dark] .voice-caves__access-select{background:var(--glass-bg);border-color:var(--glass-border);color:var(--text-dark)}[data-theme=dark] .voice-caves__access-picker{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .voice-caves__checkbox-item{color:var(--text-dark)}[data-theme=dark] .voice-caves__checkbox-item:hover{background:var(--glass-bg-strong)}.msg-page{display:flex;height:calc(100vh - 64px);background:var(--glass-bg);overflow:hidden}.msg-sidebar{width:320px;min-width:280px;max-width:340px;display:flex;flex-direction:column;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-right:1px solid var(--glass-border);overflow:hidden;flex-shrink:0}.msg-my-status{position:relative;padding:8px 12px;border-bottom:1px solid var(--glass-border)}.msg-my-status__btn{display:flex;align-items:center;gap:7px;width:100%;background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:6px 10px;cursor:pointer;font-size:.82rem;font-weight:600;color:var(--text-dark);transition:background .15s}.msg-my-status__btn:hover{background:var(--glass-bg)}.msg-my-status__chevron{margin-left:auto;font-size:.7rem;color:var(--text-light)}.msg-my-status__menu{position:absolute;top:calc(100% - 4px);left:12px;right:12px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:0 6px 20px #0000001f;z-index:50;overflow:hidden}.msg-my-status__option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;font-size:.83rem;color:var(--text-dark);cursor:pointer;transition:background .12s;text-align:left}.msg-my-status__option:hover{background:var(--glass-bg)}.msg-my-status__option.active{font-weight:700;background:#0969da1a}.msg-tabs{display:flex;border-bottom:1px solid var(--glass-border);padding:0 .75rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.msg-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:.75rem .5rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.82rem;font-weight:500;color:var(--text-light);cursor:pointer;transition:all .15s;margin-bottom:-1px}.msg-tab--active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.msg-tab:hover:not(.msg-tab--active){color:var(--text-dark)}.msg-search-wrap{position:relative;padding:.75rem;border-bottom:1px solid var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.msg-search-icon{position:absolute;left:1.25rem;top:50%;transform:translateY(-50%);color:var(--text-light);pointer-events:none}.msg-search{width:100%;padding:.5rem .75rem .5rem 2rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.83rem;background:var(--glass-bg);color:var(--text-dark);outline:none;box-sizing:border-box}.msg-search:focus{border-color:var(--primary-color)}.msg-sidebar-body{flex:1;overflow-y:auto;padding:.5rem 0;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.msg-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-light);gap:.75rem;font-size:.85rem}.msg-new-group-btn{display:flex;align-items:center;gap:6px;width:calc(100% - 1.5rem);margin:.5rem .75rem 0;padding:.45rem .75rem;background:none;border:1px dashed var(--glass-border);border-radius:var(--radius-sm);font-size:.8rem;color:var(--primary-color);cursor:pointer;transition:all .15s}.msg-new-group-btn:hover{background:var(--glass-bg);border-color:var(--primary-color)}.conv-item{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;cursor:pointer;transition:background .1s;position:relative;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.conv-item:hover{background:var(--glass-bg)}.conv-item--active{background:var(--glass-bg);border-left:3px solid var(--primary-color);padding-left:calc(1rem - 3px)}.conv-item__avatar-wrap{position:relative;flex-shrink:0}.conv-item__body{flex:1;min-width:0}.conv-item__header{display:flex;justify-content:space-between;align-items:center;gap:.25rem}.conv-item__name{font-size:.875rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-item__time{font-size:.73rem;color:var(--text-light);white-space:nowrap;flex-shrink:0}.conv-item__preview{display:flex;align-items:center;gap:4px;font-size:.78rem;color:var(--text-light);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-item__lock{color:var(--text-light);flex-shrink:0}.conv-item__badge{background:var(--primary-color);color:#fff;border-radius:99px;font-size:.7rem;font-weight:700;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0 4px;flex-shrink:0}.conv-item__pin{color:var(--warning-color);flex-shrink:0;opacity:.85}.conv-item__actions{display:none;align-items:center;gap:2px;flex-shrink:0}.conv-item:hover .conv-item__actions{display:flex}.conv-item__action-btn{background:none;border:none;padding:3px;border-radius:4px;cursor:pointer;color:var(--text-light);display:flex;align-items:center;transition:all .1s}.conv-item__action-btn:hover{background:var(--border-color);color:var(--primary-color)}.conv-item__action-btn.pinned{color:var(--warning-color)}.dir-section{padding-bottom:.5rem}.dir-section__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);padding:.75rem 1rem .25rem}.dir-card{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;cursor:pointer;transition:background .1s;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.dir-card:hover,.dir-card--active{background:var(--glass-bg)}.dir-card__avatar-wrap{position:relative;flex-shrink:0}.dir-card__info{flex:1;min-width:0}.dir-card__name{font-size:.85rem;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dir-card__meta{display:flex;align-items:center;gap:.5rem;margin-top:1px;flex-wrap:wrap}.dir-card__dept{display:flex;align-items:center;gap:3px;font-size:.72rem;color:var(--text-light)}.dir-card__status{font-size:.7rem;font-weight:600;padding:1px 6px;border-radius:99px}.dir-card__status--working{background:#10b9811f;color:var(--success-color)}.dir-card__status--on-break{background:#f59e0b1f;color:var(--warning-color)}.dir-card__status--busy{background:#ef44441f;color:var(--danger-color)}.dir-card__status--on-leave{background:#0969da14;color:var(--secondary-color)}.dir-card__status--not-available{background:var(--glass-bg);color:var(--text-light)}.dir-card__contact{display:flex;align-items:center;gap:4px;font-size:.7rem;color:var(--text-light);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dir-card__msg-btn{background:none;border:none;color:var(--primary-color);cursor:pointer;padding:6px;border-radius:var(--radius-sm);transition:background .1s;flex-shrink:0}.dir-card__msg-btn:hover{background:var(--glass-bg)}.msg-avatar{border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#6b46c1,#9333ea);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0}.msg-avatar img{width:100%;height:100%;object-fit:cover;display:block}.msg-avatar--group{background:linear-gradient(135deg,#0ea5e9 0%,var(--primary-color) 100%)}.status-dot{display:inline-block;border-radius:50%;border:2px solid var(--surface);position:absolute;bottom:0;right:0}.msg-chat{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--glass-bg)}.msg-chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;color:var(--text-light);gap:1rem;background:var(--glass-bg)}.msg-chat-empty__icon{width:72px;height:72px;border-radius:50%;background:var(--glass-bg);display:flex;align-items:center;justify-content:center;color:var(--primary-color)}.msg-chat-empty h3{font-size:1.1rem;font-weight:600;color:var(--text-dark);margin:0}.msg-chat-empty p{font-size:.875rem;margin:0;max-width:360px;color:var(--text-light)}.msg-chat-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom:1px solid var(--glass-border);flex-shrink:0}.msg-chat-back{display:none;background:none;border:none;cursor:pointer;color:var(--text-light);padding:4px;border-radius:var(--radius-sm)}.msg-chat-header__avatar-wrap{position:relative;flex-shrink:0}.msg-chat-header__info{flex:1;min-width:0}.msg-chat-header__name{font-size:.95rem;font-weight:700;color:var(--text-dark)}.msg-chat-header__sub{display:flex;align-items:center;font-size:.75rem;color:var(--text-light);margin-top:1px}.msg-chat-header__contact{display:flex;gap:.5rem}.msg-chat-header__contact-btn{display:flex;align-items:center;color:var(--text-light);background:var(--glass-bg);border-radius:var(--radius-sm);padding:6px;transition:all .15s;text-decoration:none}.msg-chat-header__contact-btn:hover{background:var(--glass-bg);color:var(--primary-color)}.msg-chat-header__e2e{display:flex;align-items:center;gap:4px;font-size:.7rem;color:var(--success-color);background:#10b9811f;padding:3px 8px;border-radius:99px;font-weight:600;white-space:nowrap}[data-theme=dark] .msg-chat-header__e2e{background:#10b98126;color:#34d399}.msg-messages{flex:1;overflow-y:auto;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:.25rem;background:var(--glass-bg)}.msg-loading{text-align:center;font-size:.8rem;color:var(--text-light);padding:.5rem}.msg-bubble-row{display:flex;align-items:flex-end;gap:.5rem;max-width:100%}.msg-bubble-row--mine{flex-direction:row-reverse}.msg-bubble-row__avatar{flex-shrink:0;align-self:flex-end}.msg-bubble{max-width:68%;padding:.6rem .9rem;border-radius:var(--radius-sm);position:relative;word-break:break-word}.msg-bubble--other{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-bottom-left-radius:4px}.msg-bubble--mine{background:linear-gradient(135deg,#6b46c1 0%,var(--primary-color) 100%);color:#fff;border-bottom-right-radius:4px}.msg-bubble__sender{font-size:.68rem;font-weight:700;color:var(--primary-color);margin-bottom:2px}.msg-bubble__text{margin:0;font-size:.875rem;line-height:1.5;white-space:pre-wrap}.msg-bubble--other .msg-bubble__text{color:var(--text-dark)}.msg-bubble--mine .msg-bubble__text{color:#fff}.msg-bubble__time{display:block;font-size:.66rem;margin-top:3px;opacity:.65;text-align:right}.msg-bubble--other .msg-bubble__time{color:var(--text-light)}.msg-bubble--mine .msg-bubble__time{color:#ffffffbf}.msg-day-divider{display:flex;align-items:center;justify-content:center;margin:1rem 0 .5rem;position:relative}.msg-day-divider:before,.msg-day-divider:after{content:"";flex:1;height:1px;background:var(--glass-border);margin:0 .75rem}.msg-day-divider span{font-size:.7rem;font-weight:600;color:var(--text-light);background:var(--glass-bg);padding:.25rem .65rem;border-radius:999px;border:1px solid var(--glass-border);text-transform:uppercase;letter-spacing:.04em}.msg-input-bar{display:flex;align-items:flex-end;gap:.5rem;padding:.75rem 1rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-top:1px solid var(--glass-border);flex-shrink:0;position:relative}.msg-input-wrap{flex:1;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.5rem .75rem;transition:border-color .15s}.msg-input-wrap:focus-within{border-color:var(--primary-color)}.msg-input{width:100%;background:transparent;border:none;outline:none;font-size:.875rem;color:var(--text-dark);resize:none;max-height:120px;overflow-y:auto;line-height:1.5;font-family:inherit}.msg-input::placeholder{color:var(--text-light)}.msg-emoji-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:var(--radius-sm);font-size:1.2rem;line-height:1;transition:background .1s;flex-shrink:0;align-self:flex-end;margin-bottom:2px}.msg-emoji-btn:hover{background:var(--glass-bg)}.msg-send-btn{width:40px;height:40px;background:linear-gradient(135deg,#6b46c1 0%,var(--primary-color) 100%);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s,transform .1s;flex-shrink:0}.msg-send-btn:disabled{opacity:.45;cursor:default}.msg-send-btn:not(:disabled):hover{opacity:.9}.msg-send-btn:not(:disabled):active{transform:scale(.94)}.msg-action-btn{width:36px;height:36px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--text-light);flex-shrink:0;align-self:flex-end;margin-bottom:2px;transition:var(--transition)}.msg-action-btn:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-color);color:var(--primary-color)}.msg-action-btn:active:not(:disabled){transform:scale(.94)}.msg-action-btn:disabled{opacity:.45;cursor:default}.msg-action-btn--gif{font-size:.7rem;font-weight:800;letter-spacing:.04em;font-family:inherit}.msg-file-attachment{display:flex;flex-direction:column;gap:6px;max-width:260px}.msg-file-img{display:block;max-width:260px;max-height:260px;width:100%;height:auto;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--glass-border);cursor:zoom-in}.msg-file-video{display:block;max-width:320px;max-height:260px;width:100%;height:auto;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:#000}.msg-file-download{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--text-light);text-decoration:none;opacity:.85;word-break:break-all}.msg-file-download:hover{opacity:1;text-decoration:underline}.msg-bubble--mine .msg-file-download{color:#ffffffd9}.msg-image-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:msgPreviewFade .15s ease-out}@keyframes msgPreviewFade{0%{opacity:0}to{opacity:1}}.msg-image-preview-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-width:560px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.msg-image-preview-close{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;border:none;background:#0000008c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .15s}.msg-image-preview-close:hover{background:#000c}.msg-image-preview-imgwrap{flex:1;min-height:0;background:var(--bg-inset);display:flex;align-items:center;justify-content:center;padding:12px}.msg-image-preview-imgwrap img,.msg-image-preview-video{max-width:100%;max-height:60vh;object-fit:contain;border-radius:var(--radius-sm)}.msg-image-preview-video{background:#000;width:100%}.msg-image-preview-info{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;border-top:1px solid var(--border-color);font-size:.8rem;color:var(--text-light)}.msg-image-preview-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-image-preview-size{flex-shrink:0;color:var(--text-muted)}.msg-image-preview-actions{display:flex;gap:8px;justify-content:flex-end;padding:12px 16px;border-top:1px solid var(--border-color);background:var(--bg-subtle);flex-wrap:wrap}.msg-image-preview-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;cursor:pointer;transition:var(--transition);border:1px solid var(--border-color);font-family:inherit}.msg-image-preview-btn.secondary{background:var(--bg-card);color:var(--text-dark)}.msg-image-preview-btn.secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--primary-color)}.msg-image-preview-btn.primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.msg-image-preview-btn.primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.msg-image-preview-btn:disabled{opacity:.6;cursor:default}.msg-emoji-picker{position:absolute;bottom:calc(100% + 8px);right:1rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.75rem;box-shadow:0 8px 24px #0000002e;z-index:50;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;width:280px;max-height:200px;overflow-y:auto}.msg-emoji-picker button{background:none;border:none;font-size:1.3rem;cursor:pointer;padding:4px;border-radius:var(--radius-sm);line-height:1;transition:background .1s}.msg-emoji-picker button:hover{background:var(--glass-bg)}.msg-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200}.msg-modal{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-radius:var(--radius-sm);padding:1.5rem;width:380px;max-width:95vw;box-shadow:0 20px 48px #00000047;display:flex;flex-direction:column;gap:1rem;max-height:80vh;overflow-y:auto}.msg-modal h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-dark)}.msg-modal input{width:100%;padding:.6rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--glass-bg);color:var(--text-dark);outline:none;box-sizing:border-box}.msg-modal input:focus{border-color:var(--primary-color)}.msg-modal input::placeholder{color:var(--text-light)}.msg-modal-members{display:flex;flex-direction:column;gap:.25rem;max-height:220px;overflow-y:auto}.msg-modal-member{display:flex;align-items:center;gap:.75rem;padding:.45rem .5rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.msg-modal-member:hover{background:var(--glass-bg)}.msg-modal-member input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-color);flex-shrink:0;padding:0}.msg-modal-member-info{flex:1;min-width:0}.msg-modal-member-name{font-size:.85rem;font-weight:600;color:var(--text-dark)}.msg-modal-member-dept{font-size:.72rem;color:var(--text-light)}.msg-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.5rem;border-top:1px solid var(--glass-border)}.msg-modal-btn{padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;border:none;transition:opacity .15s;display:inline-flex;align-items:center}.msg-modal-btn:disabled{opacity:.5;cursor:default}.msg-modal-btn--primary{background:var(--primary-color);color:#fff}.msg-modal-btn--primary:not(:disabled):hover{opacity:.88}.msg-modal-btn--secondary{background:var(--glass-bg);color:var(--text-dark);border:1px solid var(--glass-border)}.msg-modal-btn--secondary:hover{opacity:.8}.msg-sidebar--email-nav .msg-tabs{width:100%}.email-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--glass-bg)}.email-toolbar{display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom:1px solid var(--glass-border);flex-shrink:0}.email-folders{display:flex;gap:4px}.email-folder-btn{display:flex;align-items:center;gap:5px;padding:.4rem .75rem;background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;color:var(--text-light);cursor:pointer;transition:all .15s}.email-folder-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.email-folder-btn:not(.active):hover{background:var(--glass-bg);color:var(--text-dark)}.email-compose-btn{display:flex;align-items:center;gap:5px;padding:.4rem .9rem;background:linear-gradient(135deg,#6b46c1 0%,var(--primary-color) 100%);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity .15s}.email-compose-btn:hover{opacity:.88}.email-icon-btn{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.4rem .5rem;color:var(--text-light);cursor:pointer;display:flex;align-items:center;transition:all .1s}.email-icon-btn:hover{background:var(--glass-bg);color:var(--text-dark)}.email-icon-btn:disabled{opacity:.5;cursor:default}.email-search-wrap{position:relative;padding:.6rem 1rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom:1px solid var(--glass-border);flex-shrink:0}.email-search-icon{position:absolute;left:1.6rem;top:50%;transform:translateY(-50%);color:var(--text-light);pointer-events:none}.email-search{width:100%;padding:.45rem .75rem .45rem 2rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.83rem;color:var(--text-dark);outline:none;box-sizing:border-box}.email-search:focus{border-color:var(--primary-color)}.email-search::placeholder{color:var(--text-light)}.email-body{flex:1;display:flex;overflow:hidden}.email-list{width:320px;min-width:260px;max-width:360px;flex-shrink:0;border-right:1px solid var(--glass-border);overflow-y:auto;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.email-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);transition:background .1s;position:relative}.email-item:hover{background:var(--glass-bg)}.email-item.active{background:var(--glass-bg);border-left:3px solid var(--primary-color);padding-left:calc(1rem - 3px)}.email-item.unread .email-item__from,.email-item.unread .email-item__subject{font-weight:700}.email-item__top{display:flex;justify-content:space-between;align-items:center;gap:4px}.email-item__from{font-size:.82rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-item__date{font-size:.7rem;color:var(--text-light);flex-shrink:0}.email-item__subject{font-size:.82rem;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.email-item__preview{font-size:.75rem;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.email-item__actions{display:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);gap:4px;background:var(--glass-bg);border-radius:var(--radius-sm);padding:2px 4px}.email-item:hover .email-item__actions{display:flex}.email-star-btn,.email-del-btn{background:none;border:none;cursor:pointer;padding:3px;border-radius:4px;color:var(--text-light);display:flex;align-items:center;transition:color .1s}.email-star-btn.starred,.email-star-btn:hover{color:var(--warning-color)}.email-del-btn:hover{color:var(--danger-color)}.email-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-light);gap:.75rem;font-size:.85rem;height:100%}.email-empty p{margin:0;color:var(--text-light)}.email-empty strong{color:var(--text-dark)}.email-detail{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--glass-bg)}.email-detail__header{padding:1.25rem 1.5rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom:1px solid var(--glass-border);flex-shrink:0}.email-detail__subject{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 .5rem}.email-detail__meta{display:flex;flex-direction:column;gap:2px;font-size:.78rem;color:var(--text-light)}.email-detail__meta strong{color:var(--text-dark)}.email-detail__body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.email-detail__iframe{width:100%;height:100%;border:none;min-height:400px}.email-detail__text{font-family:inherit;font-size:.875rem;line-height:1.6;color:var(--text-dark);white-space:pre-wrap;word-break:break-word;margin:0}.email-error{display:flex;align-items:center;gap:6px;background:#ef44441f;color:var(--danger-color);border-radius:var(--radius-sm);padding:.5rem .75rem;font-size:.8rem}[data-theme=dark] .email-error{background:#ef444426;color:var(--danger-color)}.email-compose__field{display:flex;flex-direction:column;gap:4px}.email-compose__field label{font-size:.78rem;font-weight:600;color:var(--text-light)}.email-compose__field input,.email-compose__body{width:100%;padding:.5rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--glass-bg);color:var(--text-dark);outline:none;box-sizing:border-box;font-family:inherit;resize:vertical}.email-compose__field input:focus,.email-compose__body:focus{border-color:var(--primary-color)}.email-compose__field input::placeholder,.email-compose__body::placeholder{color:var(--text-light)}.email-cfg-section{display:flex;flex-direction:column;gap:.6rem;padding:.75rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm)}.email-cfg-section__label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);display:flex;align-items:center;gap:.5rem}.email-cfg-field{display:flex;flex-direction:column;gap:3px}.email-cfg-field label{font-size:.72rem;font-weight:600;color:var(--text-light)}.email-cfg-field input{width:100%;padding:.45rem .65rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.82rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-dark);outline:none;box-sizing:border-box}.email-cfg-field input:focus{border-color:var(--primary-color)}.email-cfg-field input::placeholder{color:var(--text-light)}.email-test-btn{display:inline-flex;align-items:center;gap:4px;padding:.3rem .65rem;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;color:var(--text-dark);cursor:pointer;transition:background .1s}.email-test-btn:hover:not(:disabled){background:var(--border-color)}.email-test-btn:disabled{opacity:.5;cursor:default}.email-test-badge{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:600;padding:2px 7px;border-radius:99px}.email-test-badge.ok{background:#10b9811f;color:var(--success-color)}.email-test-badge.fail{background:#ef44441f;color:var(--danger-color)}[data-theme=dark] .email-test-badge.ok{background:#10b98126;color:#34d399}[data-theme=dark] .email-test-badge.fail{background:#ef444426;color:var(--danger-color)}@keyframes spin-anim{to{transform:rotate(360deg)}}.spin-icon{animation:spin-anim .8s linear infinite;display:inline-block}@media (max-width: 768px){.msg-page{position:relative}.msg-sidebar{width:100%;max-width:100%;min-width:unset;position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;border-right:none}.msg-sidebar--hidden{display:none}.msg-chat{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5}.msg-chat--hidden{display:none}.msg-chat-back{display:flex}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error)}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:1em;left:1em}.Toastify__toast-container--top-center{top:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:1em;right:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:0;margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:0;transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:0;transform:translate(0)}.Toastify__toast-container--rtl{right:0;left:initial}}.Toastify__toast{position:relative;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:4px;box-shadow:0 1px 10px #0000001a,0 2px 15px #0000000d;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);overflow:hidden;font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.7s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:5px;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #0969da;--primary-dark: #0550ae;--primary-glow: rgba(9, 105, 218, .15);--secondary-color: #6639ba;--secondary-glow: rgba(102, 57, 186, .12);--danger-color: #cf222e;--danger-glow: rgba(207, 34, 46, .15);--warning-color: #9a6700;--warning-bg: #fff8c5;--success-color: #1a7f37;--success-bg: #dafbe1;--bg-page: #f6f8fa;--bg-card: #ffffff;--bg-card-hover: #f6f8fa;--bg-subtle: #f6f8fa;--bg-inset: #eaeef2;--bg-overlay: #ffffff;--glass-bg: #ffffff;--glass-bg-strong: #f6f8fa;--glass-bg-subtle: #f6f8fa;--glass-border: #d0d7de;--glass-border-subtle: #eaeef2;--glass-blur: none;--glass-blur-sm: none;--bg-light: #f6f8fa;--bg-dark: #ffffff;--surface: #ffffff;--surface-2: #f6f8fa;--card-bg: #ffffff;--text-dark: #24292f;--text-light: #57606a;--text-muted: #6e7781;--text-on-primary: #ffffff;--text-primary: #24292f;--text-secondary: #57606a;--border-color: #d0d7de;--border-subtle: #eaeef2;--shadow-sm: 0 1px 0 rgba(31, 35, 40, .04), 0 0 0 1px rgba(208, 215, 222, .6);--shadow-md: 0 3px 6px rgba(140, 149, 159, .15), 0 0 0 1px rgba(208, 215, 222, .5);--shadow-lg: 0 8px 24px rgba(140, 149, 159, .2);--shadow-xl: 0 12px 40px rgba(140, 149, 159, .25);--transition: all .15s ease;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--body-gradient: #f6f8fa;color-scheme:light}[data-theme=dark]{--primary-color: #58a6ff;--primary-dark: #388bfd;--primary-glow: rgba(88, 166, 255, .2);--secondary-color: #bc8cff;--secondary-glow: rgba(188, 140, 255, .15);--danger-color: #ff7b72;--danger-glow: rgba(255, 123, 114, .2);--warning-color: #d29922;--warning-bg: rgba(187, 128, 9, .15);--success-color: #3fb950;--success-bg: rgba(46, 160, 67, .15);--bg-page: #0d1117;--bg-card: #161b22;--bg-card-hover: #1c2128;--bg-subtle: #161b22;--bg-inset: #010409;--bg-overlay: #1c2128;--glass-bg: #161b22;--glass-bg-strong: #1c2128;--glass-bg-subtle: #0d1117;--glass-border: #30363d;--glass-border-subtle: #21262d;--glass-blur: none;--glass-blur-sm: none;--bg-light: #161b22;--bg-dark: #0d1117;--surface: #161b22;--surface-2: #1c2128;--card-bg: #161b22;--text-dark: #e6edf3;--text-light: #8b949e;--text-muted: #6e7681;--text-on-primary: #ffffff;--text-primary: #e6edf3;--text-secondary: #8b949e;--border-color: #30363d;--border-subtle: #21262d;--shadow-sm: 0 0 0 1px #30363d;--shadow-md: 0 3px 6px rgba(1, 4, 9, .4), 0 0 0 1px #30363d;--shadow-lg: 0 8px 24px rgba(1, 4, 9, .5);--shadow-xl: 0 12px 40px rgba(1, 4, 9, .6);--body-gradient: #0d1117;color-scheme:dark}html{background:var(--bg-page);min-height:100%}[data-theme=dark] html{background:#0d1117}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-page);background-attachment:fixed;background-size:cover;min-height:100vh;color:var(--text-dark);line-height:1.5;font-size:14px}.app{min-height:100vh;display:flex;flex-direction:column;background:transparent}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.glass-surface{background:var(--bg-subtle);border:1px solid var(--border-subtle)}.glow-primary{box-shadow:0 0 0 3px var(--primary-glow)}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;gap:1rem}.spinner{width:32px;height:32px;border:2px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin .7s linear infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-subtle)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:999px;border:2px solid var(--bg-subtle)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.theme-toggle{--toggle-w: 84px;--toggle-h: 45px;--thumb: 36px;--x: 42px;position:relative;display:inline-block;width:var(--toggle-w);height:var(--toggle-h)}.theme-toggle--compact{--toggle-w: 69px;--toggle-h: 39px;--thumb: 30px;--x: 33px}.theme-toggle input{position:absolute;opacity:0;width:0;height:0}.theme-toggle-sr{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.theme-toggle__track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg-inset);border:1px solid var(--border-color);border-radius:999px;transition:background .3s ease,border-color .3s ease}.theme-toggle:hover .theme-toggle__track{border-color:var(--primary-color);background:var(--primary-glow)}.theme-toggle__thumb{position:absolute;top:50%;left:3px;width:var(--thumb);height:var(--thumb);border-radius:50%;background:var(--bg-card);border:1px solid var(--border-color);transform:translateY(-50%);transition:transform .3s ease,background .3s ease,border-color .3s ease;display:grid;place-items:center;color:var(--warning-color);box-shadow:var(--shadow-sm)}.theme-toggle__icon{width:calc(var(--thumb) * .7);height:calc(var(--thumb) * .7);position:absolute;transition:opacity .3s ease,transform .3s ease}.theme-toggle__icon.moon{opacity:0;transform:rotate(-45deg) scale(.9)}.theme-toggle__icon.sun{opacity:1;transform:rotate(0) scale(1)}.theme-toggle input:checked~.theme-toggle__track{background:var(--primary-glow);border-color:var(--primary-color)}.theme-toggle input:checked~.theme-toggle__track .theme-toggle__thumb{transform:translate(var(--x),-50%);color:var(--primary-color);background:var(--bg-overlay);border-color:var(--primary-color)}.theme-toggle input:checked~.theme-toggle__track .theme-toggle__icon.moon{opacity:1;transform:rotate(0) scale(1)}.theme-toggle input:checked~.theme-toggle__track .theme-toggle__icon.sun{opacity:0;transform:rotate(45deg) scale(.9)}[data-theme=dark] .navbar{background:var(--bg-card);border-bottom:1px solid var(--border-color)}[data-theme=dark] .status-button,[data-theme=dark] .status-menu,[data-theme=dark] .user-info-clickable{background:var(--bg-card);color:var(--text-dark);border-color:var(--border-color)}[data-theme=dark] .status-menu button{background:transparent;color:var(--text-dark)}[data-theme=dark] .status-menu button:hover{background:var(--bg-inset)}[data-theme=dark] .status-button{background:var(--bg-card);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .status-button:hover{background:var(--bg-card-hover);border-color:var(--primary-color)}[data-theme=dark] .logout-btn{box-shadow:none}[data-theme=dark] .clock-btn{color:var(--text-dark)}[data-theme=dark] .clock-in:hover{background:var(--success-color);box-shadow:none}[data-theme=dark] .clock-out:hover{background:var(--danger-color);box-shadow:none}[data-theme=dark] .dashboard{background:var(--bg-page)}[data-theme=dark] .dashboard-nav{background:var(--bg-card);border-bottom:1px solid var(--border-color)}[data-theme=dark] .dashboard-nav button{color:var(--text-light)}[data-theme=dark] .dashboard-nav button:hover{background:var(--bg-card-hover);color:var(--text-dark)}[data-theme=dark] .dashboard-nav button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}[data-theme=dark] .kanban-header h1{color:var(--text-dark)}[data-theme=dark] .search-box{background:var(--bg-inset);border-color:var(--border-color)}[data-theme=dark] .search-box input{color:var(--text-dark);background:transparent}[data-theme=dark] .search-box input::placeholder{color:var(--text-muted)}[data-theme=dark] .urgency-filter label{color:var(--text-dark)}[data-theme=dark] .filter-select{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .kanban-column{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .column-header{background:var(--bg-subtle);border-bottom:1px solid var(--border-color)}[data-theme=dark] .column-header h2{color:var(--text-dark)}[data-theme=dark] .task-count{background:var(--bg-inset);color:var(--text-light);border:1px solid var(--border-subtle)}[data-theme=dark] .column-content{background:transparent}[data-theme=dark] .column-content.dragging-over{background:#58a6ff0f}[data-theme=dark] .empty-column{color:var(--text-muted)}[data-theme=dark] .task-card{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .task-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color)}[data-theme=dark] .task-title{color:var(--text-dark)}[data-theme=dark] .task-description,[data-theme=dark] .task-collapsed-info{color:var(--text-light)}[data-theme=dark] .expand-btn:hover{background:var(--bg-card-hover)}[data-theme=dark] .task-subtasks{background:var(--bg-inset);border-color:var(--border-subtle)}[data-theme=dark] .subtasks-summary{color:var(--text-light)}[data-theme=dark] .subtask-item{color:var(--text-dark)}[data-theme=dark] .subtask-item span.completed{color:var(--text-muted);text-decoration:line-through}[data-theme=dark] .task-footer{border-top:1px solid var(--border-subtle)}[data-theme=dark] .task-deadline,[data-theme=dark] .task-assigned,[data-theme=dark] .task-owner-info{color:var(--text-light)}[data-theme=dark] .task-card.due-overdue{background:#ff7b7214;border-color:#ff7b724d}[data-theme=dark] .task-card.due-due-today{background:#d2992214;border-color:#d299224d}[data-theme=dark] .task-card.due-future{background:#3fb9500f}[data-theme=dark] .urgency-critical{background:#ff7b721f;color:#ff7b72;border-color:#ff7b724d}[data-theme=dark] .urgency-high{background:#d299221f;color:#e3b341;border-color:#d299224d}[data-theme=dark] .urgency-medium{background:#bc8cff1f;color:#bc8cff;border-color:#bc8cff4d}[data-theme=dark] .urgency-low{background:#58a6ff1a;color:#58a6ff;border-color:#58a6ff4d}[data-theme=dark] .urgency-minimal{background:#8b949e1a;color:#8b949e;border-color:#8b949e33}[data-theme=dark] .task-project-tag{background:#bc8cff1a;color:var(--text-light);border:1px solid var(--border-subtle)}[data-theme=dark] .action-btn{color:var(--text-light)}[data-theme=dark] .action-btn:hover{background:var(--bg-card-hover);color:var(--primary-color)}[data-theme=dark] .reports-container,[data-theme=dark] .reports-header h1{color:var(--text-dark)}[data-theme=dark] .report-type-selector{border:1px solid var(--border-color);background:var(--bg-card)}[data-theme=dark] .report-type-selector button{background:transparent;color:var(--text-light);border-right-color:var(--border-subtle)}[data-theme=dark] .report-type-selector button:hover:not(.active){background:var(--bg-card-hover)}[data-theme=dark] .date-range-selector{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .date-range-selector input{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .date-range-selector span{color:var(--text-light)}[data-theme=dark] .summary-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .card-content h2{color:var(--text-dark)}[data-theme=dark] .card-content p{color:var(--text-light)}[data-theme=dark] .chart-container{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .messaging-container,[data-theme=dark] .conversations-panel,[data-theme=dark] .messages-panel{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .conversation-item{border-color:var(--border-subtle)}[data-theme=dark] .conversation-item:hover,[data-theme=dark] .conversation-item.active{background:var(--bg-card-hover)}[data-theme=dark] .message-input-area{background:var(--bg-card);border-top:1px solid var(--border-color)}[data-theme=dark] .message-input{background:var(--bg-inset);border-color:var(--border-color);color:var(--text-dark)}[data-theme=dark] .message-bubble.own{background:var(--primary-dark);color:#fff}[data-theme=dark] .message-bubble.other{background:var(--bg-inset);color:var(--text-dark)}[data-theme=dark] .modal-content,[data-theme=dark] .task-modal,[data-theme=dark] .full-task-modal{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-xl)}[data-theme=dark] .modal-header{border-bottom:1px solid var(--border-color)}[data-theme=dark] .modal-footer{border-top:1px solid var(--border-color)}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:var(--bg-inset)!important;color:var(--text-dark)!important;border-color:var(--border-color)!important}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--primary-color)!important;box-shadow:0 0 0 3px var(--primary-glow)!important;outline:none}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)!important}[data-theme=dark] table{border-color:var(--border-color)}[data-theme=dark] th{background:var(--bg-subtle);color:var(--text-light);border-color:var(--border-color)}[data-theme=dark] td{border-color:var(--border-subtle);color:var(--text-dark)}[data-theme=dark] tr:hover td{background:var(--bg-card-hover)}[data-theme=dark] .payroll-container,[data-theme=dark] .leave-container,[data-theme=dark] .admin-view,[data-theme=dark] .manager-view{background:var(--bg-page);color:var(--text-dark)}[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .section-card{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .ac-page,[data-theme=dark] .ac-view{background:var(--bg-page)}[data-theme=dark] .ac-stat,[data-theme=dark] .ac-invoice-row{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .ac-invoice-row:hover{background:var(--bg-card-hover)}[data-theme=dark] .ac-panel{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] .ac-tabs button{color:var(--text-light);border-color:var(--border-subtle)}[data-theme=dark] .ac-tabs button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}[data-theme=dark] .dropdown,[data-theme=dark] .dropdown-menu{background:var(--bg-overlay);border:1px solid var(--border-color);box-shadow:var(--shadow-lg)}[data-theme=dark] .dropdown-item:hover{background:var(--bg-card-hover)}[data-theme=dark] .tooltip{background:var(--bg-overlay);border:1px solid var(--border-color);color:var(--text-dark)}[data-theme=dark] .badge{border:1px solid var(--border-subtle)}[data-theme=dark] .announcement-banner{background:var(--bg-subtle);border:1px solid var(--border-color);color:var(--text-dark)}select{background-color:var(--bg-card);color:var(--text-dark);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 32px 8px 10px;min-height:36px;font-family:inherit;font-size:.875rem;line-height:1.6;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2357606a'><path d='M4.5 6l3.5 4 3.5-4z'/></svg>");background-repeat:no-repeat;background-position:right 8px center;background-size:14px;cursor:pointer}select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-glow)}select option{background-color:var(--bg-card);color:var(--text-dark)}[data-theme=dark] select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%238b949e'><path d='M4.5 6l3.5 4 3.5-4z'/></svg>")}[data-theme=dark] select option{background-color:#161b22;color:#e6edf3}.form-group select,.form-group input,.form-group textarea{width:100%;background-color:var(--bg-card);color:var(--text-dark);border:1px solid var(--border-color)}.form-group select option{background-color:var(--bg-card);color:var(--text-dark)}input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;-moz-appearance:checkbox;width:16px;height:16px;border:1px solid var(--border-color);border-radius:3px;background-color:var(--bg-card);cursor:pointer;accent-color:var(--primary-color)}[data-theme=dark] input[type=checkbox]{border-color:var(--border-color);background-color:var(--bg-inset)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:flex-start;justify-content:center;padding:60px 20px;z-index:1000;overflow-y:auto}.modal-content{background:var(--bg-card);color:var(--text-dark);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:640px;max-height:calc(100vh - 120px);overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--border-color)}[data-theme=dark] .modal-overlay{background:#010409bf}.policy-container{max-width:800px;margin:30px auto;background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #00000014}.policy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.policy-header h1{font-size:26px;font-weight:600}.policy-category{background:#3b82f6;color:#fff;padding:4px 10px;border-radius:6px;font-size:14px}.policy-body{margin-top:20px;line-height:1.7;color:#444}.policy-body h3{margin-bottom:10px}.policy-footer{margin-top:30px;border-top:1px solid #eee;padding-top:15px;color:#666;font-size:14px}.policy-loading{text-align:center;padding:50px;font-size:18px}.create-policy-page{max-width:600px;margin:auto;padding:30px}.policy-form{display:flex;flex-direction:column;gap:15px}.policy-form input,.policy-form textarea{padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px}.policy-form textarea{min-height:120px}.policy-form button{background:#2563eb;color:#fff;border:none;padding:10px;border-radius:6px;cursor:pointer}.policy-form button:hover{background:#1e40af}.sales-page{min-height:100vh;background:var(--bg-light, #f9fafb);display:flex;flex-direction:column}.sales-header{background:var(--surface, #fff);border-bottom:1px solid var(--glass-border);padding:0 2rem;display:flex;align-items:center;gap:2rem}.sales-tab-btn{padding:1rem 0;border:none;background:none;font-size:.9rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s;display:flex;align-items:center;gap:6px}.sales-tab-btn.active,.sales-tab-btn:hover{color:var(--primary-color, var(--primary-color));border-bottom-color:var(--primary-color, var(--primary-color))}.sales-body{display:flex;flex:1;overflow:hidden;height:calc(100vh - 120px)}.sales-sidebar{width:320px;min-width:280px;background:var(--surface, #fff);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;overflow:hidden}.sales-sidebar-header{padding:1rem 1.25rem;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sales-sidebar-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--text-dark)}.sales-new-btn{display:flex;align-items:center;gap:5px;padding:.45rem .9rem;background:var(--primary-color, var(--primary-color));color:#fff;border:none;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.sales-new-btn:hover{background:var(--primary-dark)}.sales-list{flex:1;overflow-y:auto}.sales-invoice-item{padding:.85rem 1.25rem;border-bottom:1px solid var(--glass-border);cursor:pointer;transition:background .15s;display:flex;flex-direction:column;gap:4px}.sales-invoice-item:hover{background:var(--bg-light, #f9fafb)}.sales-invoice-item.selected{background:#0969da1a;border-left:3px solid var(--primary-color, var(--primary-color))}.sales-invoice-item-top{display:flex;align-items:center;justify-content:space-between}.sales-invoice-num{font-size:.82rem;font-weight:700;color:var(--primary-color, var(--primary-color));font-family:monospace}.sales-invoice-client{font-size:.9rem;font-weight:500;color:var(--text-dark)}.sales-invoice-meta{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:var(--text-secondary, #6b7280)}.sales-invoice-total{font-weight:600;color:var(--text-dark);font-size:.85rem}.sales-status-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm);text-transform:uppercase}.sales-status-badge.quote{background:#f59e0b1f;color:var(--warning-color)}.sales-status-badge.converted{background:#0969da14;color:var(--secondary-color)}.sales-status-badge.draft{background:var(--glass-bg-subtle);color:var(--text-dark)}.sales-status-badge.sent{background:#3b82f61f;color:var(--primary-color)}.sales-status-badge.paid{background:#10b9811f;color:var(--success-color)}.sales-status-badge.payment-unpaid{background:var(--glass-bg-subtle);color:var(--text-muted)}.sales-status-badge.payment-partially_paid{background:#f59e0b1f;color:var(--warning-color)}.sales-status-badge.payment-paid{background:#10b9811f;color:var(--success-color)}.sales-status-badge.payment-overdue{background:#ef44441f;color:var(--danger-color)}.sales-status-badge.payment-written_off{background:#0969da14;color:var(--secondary-color)}.sales-empty{padding:3rem 1.5rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.9rem}.sales-main{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.sales-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary, #6b7280)}.sales-placeholder svg{opacity:.3}.sales-placeholder p{margin:0;font-size:1rem}.sales-form-card{background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.5rem}.sales-form-card h3{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:var(--text-dark);display:flex;align-items:center;gap:8px}.sales-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sales-form-group{display:flex;flex-direction:column;gap:5px}.sales-form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em}.sales-form-group input,.sales-form-group select,.sales-form-group textarea{padding:.55rem .8rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--bg-light, #f9fafb);color:var(--text-dark);transition:border-color .2s;outline:none}.sales-form-group input:focus,.sales-form-group select:focus,.sales-form-group textarea:focus{border-color:var(--primary-color, var(--primary-color));background:var(--surface, #fff)}.sales-form-group textarea{resize:vertical;min-height:72px}.sales-items-table{width:100%;border-collapse:collapse;font-size:.875rem}.sales-items-table th{text-align:left;padding:.4rem .5rem;font-size:.75rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--glass-border)}.sales-items-table td{padding:.4rem .5rem;vertical-align:middle}.sales-items-table input{width:100%;padding:.4rem .5rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--bg-light, #f9fafb);color:var(--text-dark);outline:none}.sales-items-table input:focus{border-color:var(--primary-color, var(--primary-color));background:var(--surface, #fff)}.sales-item-remove{background:none;border:none;color:var(--danger-color);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center}.sales-item-remove:hover{background:#ef44441f}.sales-add-item-btn{margin-top:.75rem;display:flex;align-items:center;gap:5px;padding:.4rem .8rem;background:none;border:1px dashed var(--glass-border);border-radius:var(--radius-sm);font-size:.82rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s}.sales-add-item-btn:hover{border-color:var(--primary-color, var(--primary-color));color:var(--primary-color, var(--primary-color));background:#0969da1a}.sales-totals{margin-top:1rem;display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:.875rem}.sales-totals-row{display:flex;gap:2rem;align-items:center}.sales-totals-label{color:var(--text-secondary, #6b7280);min-width:80px;text-align:right}.sales-totals-value{font-weight:500;min-width:90px;text-align:right;color:var(--text-dark)}.sales-totals-row.total{font-weight:700;font-size:1rem;border-top:1px solid var(--glass-border);padding-top:6px;margin-top:4px}.sales-form-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.sales-btn{display:flex;align-items:center;gap:6px;padding:.55rem 1.1rem;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.sales-btn-primary{background:var(--primary-color, var(--primary-color));color:#fff}.sales-btn-primary:hover{background:var(--primary-dark)}.sales-btn-secondary{background:var(--bg-light, #f3f4f6);color:var(--text-dark);border:1px solid var(--glass-border)}.sales-btn-secondary:hover{background:var(--border-color)}.sales-btn-success{background:var(--success-color);color:#fff}.sales-btn-success:hover{background:var(--success-color)}.sales-btn-danger{background:var(--danger-color);color:#fff}.sales-btn-danger:hover{background:var(--danger-color)}.sales-btn:disabled{opacity:.6;cursor:not-allowed}.sales-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.sales-detail-header h2{margin:0;font-size:1.2rem;font-weight:700;color:var(--text-dark)}.sales-detail-meta{font-size:.82rem;color:var(--text-secondary, #6b7280);margin-top:4px}.sales-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.invoice-preview{background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden}.invoice-preview-header{padding:2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.invoice-preview-logo{max-height:64px;max-width:160px;object-fit:contain}.invoice-preview-company h2{margin:0 0 4px;font-size:1.2rem;font-weight:700}.invoice-preview-company p{margin:0;font-size:.8rem;color:var(--text-secondary, #6b7280);line-height:1.5}.invoice-preview-title{text-align:right}.invoice-preview-title h1{margin:0;font-size:1.25rem;font-weight:900;letter-spacing:-.02em;text-transform:uppercase}.invoice-preview-title p{margin:4px 0 0;font-size:.8rem;color:var(--text-secondary, #6b7280)}.invoice-preview-meta{padding:0 2rem 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.invoice-preview-meta-group label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);display:block;margin-bottom:4px}.invoice-preview-meta-group p{margin:0;font-size:.875rem;color:var(--text-dark);line-height:1.5}.invoice-preview-table{width:100%;border-collapse:collapse;font-size:.875rem}.invoice-preview-table thead tr{background:var(--accent, var(--primary-color));color:#fff}.invoice-preview-table th{padding:.65rem 1rem;text-align:left;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.invoice-preview-table th:last-child,.invoice-preview-table td:last-child{text-align:right}.invoice-preview-table td{padding:.65rem 1rem;border-bottom:1px solid var(--glass-border);color:var(--text-dark)}.invoice-preview-table tbody tr:nth-child(2n){background:var(--bg-light, #f9fafb)}.invoice-preview-footer{padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap}.invoice-preview-note{flex:1;font-size:.8rem;color:var(--text-secondary, #6b7280);line-height:1.6}.invoice-preview-note strong{display:block;margin-bottom:4px;color:var(--text-dark)}.invoice-preview-totals{min-width:220px}.invoice-preview-totals-row{display:flex;justify-content:space-between;padding:4px 0;font-size:.875rem;color:var(--text-secondary, #6b7280)}.invoice-preview-totals-row.grand-total{font-weight:600;font-size:1rem;color:var(--text-dark);border-top:2px solid var(--border-color);padding-top:8px;margin-top:4px}.sales-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.sales-template-card{background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;transition:box-shadow .2s;position:relative}.sales-template-card:hover{box-shadow:none}.sales-template-card-accent{position:absolute;top:0;left:0;right:0;height:4px;border-radius:var(--radius-sm) 10px 0 0}.sales-template-card h4{margin:4px 0 0;font-size:.95rem;font-weight:700;color:var(--text-dark)}.sales-template-card p{margin:0;font-size:.8rem;color:var(--text-secondary, #6b7280);line-height:1.5}.sales-template-card-actions{display:flex;gap:.5rem;margin-top:auto}.sales-template-default-badge{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-sm);background:#10b9811f;color:var(--success-color);text-transform:uppercase}[data-theme=dark] .sales-form-group input,[data-theme=dark] .sales-form-group select,[data-theme=dark] .sales-form-group textarea,[data-theme=dark] .sales-items-table input{background:var(--glass-bg);color:var(--text-dark);border-color:var(--glass-border)}[data-theme=dark] .sales-status-badge.draft{background:#374151;color:#d1d5db}.client-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:0 8px 24px #0000001f;z-index:999;overflow:hidden;max-height:260px;display:flex;flex-direction:column}.client-dropdown-search{padding:.5rem .75rem;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;gap:6px}.client-dropdown-search input{border:none;outline:none;background:transparent;color:var(--text-dark);font-size:.875rem;flex:1}.client-dropdown-item{padding:.6rem .9rem;cursor:pointer;font-size:.875rem;color:var(--text-dark);transition:background .15s;overflow-y:auto}.client-dropdown-item:hover{background:#0969da1a}.client-dropdown-item strong{display:block;font-weight:600}.client-dropdown-item span{font-size:.78rem;color:var(--text-secondary, #6b7280)}.client-dropdown-empty{padding:.75rem .9rem;font-size:.82rem;color:var(--text-secondary, #6b7280);text-align:center}.template-editor{display:grid;grid-template-columns:420px 1fr;gap:1.5rem;align-items:start}.template-editor-form{background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.5rem;overflow-y:auto;max-height:calc(100vh - 200px)}.template-editor-preview{background:var(--surface, #fff);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.25rem;overflow:hidden;min-height:400px}.template-editor-preview-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary, #6b7280);margin-bottom:.75rem;display:flex;align-items:center;gap:6px}.template-section{margin-bottom:2rem}.template-section-title{font-size:.9rem;font-weight:700;color:var(--text-dark);margin:0 0 .75rem;display:flex;align-items:center;gap:8px}.template-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary, #6b7280);margin:1rem 0 .4rem}.layout-style-btn{border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:10px 6px 8px;background:var(--glass-bg);cursor:pointer;text-align:center;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:6px}.layout-style-btn:hover{border-color:var(--primary-color);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.layout-style-btn.active{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}.layout-style-btn-icon{width:44px;height:32px;border-radius:4px;overflow:hidden;flex-shrink:0}.layout-style-btn-label{font-weight:700;font-size:.78rem;color:var(--text-dark)}.layout-style-btn-desc{font-size:.65rem;color:var(--text-light);line-height:1.3}[data-theme=dark] .client-dropdown{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-color:var(--glass-border);box-shadow:0 8px 24px #0006}[data-theme=dark] .client-dropdown-search input{color:var(--text-dark)}[data-theme=dark] .template-editor-form,[data-theme=dark] .template-editor-preview{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-color:var(--glass-border)}[data-theme=dark] .layout-style-btn{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .layout-style-btn:hover,[data-theme=dark] .layout-style-btn.active{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}[data-theme=dark] .layout-style-btn-label{color:var(--text-dark)}[data-theme=dark] .layout-style-btn-desc{color:var(--text-light)}[data-theme=dark] .template-section-title{color:var(--text-dark)}[data-theme=dark] .template-section-label,[data-theme=dark] .template-editor-preview-label{color:var(--text-light)}[data-theme=dark] .tpl-editor-header{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom-color:var(--border-color)}[data-theme=dark] .tpl-builder{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-color:var(--glass-border)}[data-theme=dark] .tpl-builder-palette{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-right-color:var(--border-color)}[data-theme=dark] .tpl-builder-canvas{background:var(--glass-bg)}[data-theme=dark] .tpl-builder-props{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-left-color:var(--border-color)}[data-theme=dark] .tpl-builder-props-header{color:var(--text-light);border-bottom-color:var(--border-color)}[data-theme=dark] .tpl-palette-add-btn{background:var(--glass-bg);color:var(--text-dark);border-color:var(--glass-border)}[data-theme=dark] .tpl-palette-add-btn:hover{background:var(--border-color)}[data-theme=dark] .tpl-mode-btn{color:var(--text-light);border-color:var(--glass-border)}[data-theme=dark] .tpl-prop-field label{color:var(--text-light)}[data-theme=dark] .tpl-prop-field input,[data-theme=dark] .tpl-prop-field select,[data-theme=dark] .tpl-prop-field textarea{background:var(--glass-bg);color:var(--text-dark);border-color:var(--glass-border)}[data-theme=dark] .tpl-block-action-btn{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-dark);border-color:var(--glass-border)}[data-theme=dark] .tpl-block-action-btn:hover{background:var(--glass-bg)}[data-theme=dark] .sales-status-badge.quote{background:#451a03;color:#fcd34d}[data-theme=dark] .sales-status-badge.converted{background:#2e1065;color:var(--text-light)}[data-theme=dark] .sales-status-badge.sent{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .sales-status-badge.paid{background:#064e3b;color:#6ee7b7}@media print{body>*:not(#invoice-print-root){display:none!important}#invoice-print-root{display:block!important;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);padding:32px;color:#000;font-family:sans-serif}}.tpl-builder{display:flex;height:calc(100vh - 180px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--card-bg)}.tpl-builder-palette{width:156px;flex-shrink:0;border-right:1px solid var(--glass-border);padding:12px;overflow-y:auto;background:var(--card-bg)}.tpl-builder-canvas{flex:1;overflow-y:auto;background:var(--sidebar-bg, #f3f4f6);padding:20px;display:flex;justify-content:center;align-items:flex-start}.tpl-builder-props{width:240px;flex-shrink:0;border-left:1px solid var(--glass-border);overflow-y:auto;background:var(--card-bg)}.tpl-builder-props-header{padding:10px 14px;border-bottom:1px solid var(--glass-border);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.tpl-block-row{position:relative;transition:outline .1s}.tpl-block-row:hover .tpl-block-actions,.tpl-block-row:hover .tpl-block-handle{opacity:1!important}.tpl-block-actions{position:absolute;top:4px;right:6px;display:flex;gap:3px;z-index:20;opacity:0;transition:opacity .15s;pointer-events:auto}.tpl-block-handle{position:absolute;top:50%;left:3px;transform:translateY(-50%);opacity:0;transition:opacity .15s;cursor:grab;color:#ffffffb3;font-size:13px;line-height:1;-webkit-user-select:none;user-select:none;z-index:20;text-shadow:0 1px 3px rgba(0,0,0,.5)}.tpl-block-handle:active{cursor:grabbing}.tpl-block-action-btn{padding:2px 6px;border-radius:4px;border:1px solid rgba(0,0,0,.12);background:#ffffffeb;cursor:pointer;font-size:10px;color:var(--text-dark);line-height:1.4}.tpl-block-action-btn:hover{background:var(--glass-bg)}.tpl-block-action-btn.danger{color:var(--danger-color)}.tpl-block-drag-over-before{box-shadow:inset 0 3px 0 0 var(--accent, var(--primary-color))}.tpl-block-drag-over-after{box-shadow:inset 0 -3px 0 0 var(--accent, var(--primary-color))}.tpl-palette-add-btn{width:100%;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--hover-bg, #f9fafb);cursor:pointer;font-size:.78rem;color:var(--text-primary);margin-bottom:6px;text-align:left}.tpl-palette-add-btn:hover{background:var(--border-color)}.tpl-editor-header{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--glass-border);background:var(--card-bg);flex-shrink:0}.tpl-mode-btn{padding:5px 12px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:none;cursor:pointer;font-size:.8rem;color:var(--text-secondary)}.tpl-mode-btn.active{background:var(--accent, var(--primary-color));color:#fff;border-color:var(--accent, var(--primary-color))}.tpl-prop-field{margin-bottom:10px}.tpl-prop-field label{display:block;font-size:.73rem;color:var(--text-secondary);margin-bottom:3px}.tpl-prop-field input,.tpl-prop-field select,.tpl-prop-field textarea{width:100%;padding:5px 8px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--input-bg, #fff);color:var(--text-primary);font-size:.8rem;box-sizing:border-box}.tpl-prop-field textarea{resize:vertical;min-height:72px}.sett-page{min-height:100vh;background:var(--glass-bg);display:flex;flex-direction:column}.sett-layout{display:flex;flex:1;max-width:1100px;width:100%;margin:2rem auto;gap:1.5rem;padding:0 1.25rem;align-items:flex-start}.sett-nav{width:220px;min-width:200px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.75rem 0;flex-shrink:0;position:sticky;top:1.5rem}.sett-nav__title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-light);padding:.25rem 1rem .75rem}.sett-nav__item{display:flex;align-items:center;gap:.65rem;width:100%;padding:.65rem 1rem;background:none;border:none;font-size:.875rem;font-weight:500;color:var(--text-dark);cursor:pointer;text-align:left;transition:background .1s;border-radius:0}.sett-nav__item:hover{background:var(--glass-bg)}.sett-nav__item--active{background:var(--glass-bg);color:var(--primary-color);font-weight:600;border-left:3px solid var(--primary-color);padding-left:calc(1rem - 3px)}.sett-nav__arrow{margin-left:auto;color:var(--text-light);flex-shrink:0}.sett-main{flex:1;min-width:0;position:relative}.sett-saved-toast{display:flex;align-items:center;gap:6px;background:#10b9811f;color:var(--success-color);border-radius:var(--radius-sm);padding:.5rem 1rem;font-size:.85rem;font-weight:600;margin-bottom:1rem}[data-theme=dark] .sett-saved-toast{background:#10b98126;color:#34d399}.sett-section{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden}.sett-section__header{padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--glass-border)}.sett-section__header h2{margin:0 0 .25rem;font-size:1rem;font-weight:700;color:var(--text-dark)}.sett-section__header p{margin:0;font-size:.82rem;color:var(--text-light)}.sett-section__body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.sett-section__footer{padding:1rem 1.5rem;border-top:1px solid var(--glass-border);display:flex;justify-content:flex-end}.sett-field{display:flex;flex-direction:column;gap:.35rem}.sett-field__label{font-size:.8rem;font-weight:600;color:var(--text-dark)}.sett-field__hint{font-size:.72rem;color:var(--text-light);margin-top:-.2rem}.sett-input{width:100%;padding:.55rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--glass-bg);color:var(--text-dark);outline:none;box-sizing:border-box;transition:border-color .15s}.sett-input:focus{border-color:var(--primary-color)}.sett-input::placeholder{color:var(--text-light)}.sett-select{width:100%;padding:.55rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--glass-bg);color:var(--text-dark);outline:none;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.sett-select:focus{border-color:var(--primary-color)}.sett-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sett-row-3{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:1rem}.sett-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0}.sett-toggle-row__info{flex:1}.sett-toggle-row__label{font-size:.875rem;font-weight:600;color:var(--text-dark);display:block}.sett-toggle-row__hint{font-size:.75rem;color:var(--text-light);display:block;margin-top:1px}.sett-toggle{width:44px;height:24px;border-radius:99px;border:none;background:var(--border-color);cursor:pointer;position:relative;flex-shrink:0;transition:background .2s;padding:0}.sett-toggle--on{background:var(--primary-color)}.sett-toggle__thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--glass-bg);transition:transform .2s;box-shadow:0 1px 3px #0003}.sett-toggle--on .sett-toggle__thumb{transform:translate(20px)}.sett-btn{display:inline-flex;align-items:center;gap:6px;padding:.55rem 1.1rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;cursor:pointer;border:none;transition:opacity .15s}.sett-btn:disabled{opacity:.5;cursor:default}.sett-btn--primary{background:var(--primary-color);color:#fff}.sett-btn--primary:not(:disabled):hover{opacity:.88}.sett-btn--ghost{background:var(--glass-bg);color:var(--text-dark);border:1px solid var(--glass-border)}.sett-btn--ghost:not(:disabled):hover{background:var(--border-color)}.sett-group-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);display:flex;align-items:center;gap:.5rem;margin-bottom:-.25rem}.sett-test-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:99px;text-transform:none;letter-spacing:0}.sett-test-badge.ok{background:#10b9811f;color:var(--success-color)}.sett-test-badge.fail{background:#ef44441f;color:var(--danger-color)}[data-theme=dark] .sett-test-badge.ok{background:#10b98126;color:#34d399}[data-theme=dark] .sett-test-badge.fail{background:#ef444426;color:var(--danger-color)}.sett-info-box{display:flex;gap:8px;align-items:flex-start;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.8rem;color:var(--text-light);line-height:1.5}.sett-info-box svg{flex-shrink:0;margin-top:2px;color:var(--primary-color)}.sett-info-box strong{color:var(--text-dark)}.sett-divider{border:none;border-top:1px solid var(--glass-border);margin:.25rem 0}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@media (max-width: 768px){.sett-layout{flex-direction:column;margin:1rem;padding:0;gap:1rem}.sett-nav{width:100%;position:static}.sett-row-2,.sett-row-3{grid-template-columns:1fr}}.crm-page{min-height:100vh;background:var(--glass-bg);display:flex;flex-direction:column}.crm-header{padding:1.25rem 1.5rem 0;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-bottom:1px solid var(--glass-border)}.crm-header h1{margin:0 0 1rem;font-size:1.25rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}.crm-tabs{display:flex;gap:.25rem}.crm-tab{padding:.55rem 1.1rem;border:none;background:none;cursor:pointer;font-size:.85rem;font-weight:500;color:var(--text-light);border-bottom:2px solid transparent;transition:all .15s;display:flex;align-items:center;gap:.4rem;white-space:nowrap}.crm-tab:hover{color:var(--text-dark)}.crm-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.crm-body{flex:1;padding:1.5rem;overflow-y:auto}.crm-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.crm-stat-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1rem 1.25rem;display:flex;align-items:center;gap:.85rem}.crm-stat-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--glass-bg);color:var(--primary-color)}.crm-stat-icon.warn{background:#f59e0b1f;color:var(--warning-color)}.crm-stat-icon.danger{background:#ef44441f;color:var(--danger-color)}.crm-stat-icon.green{background:#10b9811f;color:var(--success-color)}.crm-stat-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light)}.crm-stat-value{font-size:1.6rem;font-weight:700;color:var(--text-dark);line-height:1;margin-top:2px}.crm-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media (max-width: 860px){.crm-overview-grid{grid-template-columns:1fr}}.crm-panel{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden}.crm-panel-header{padding:.9rem 1.1rem;border-bottom:1px solid var(--glass-border);font-size:.88rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}.crm-panel-body{padding:.5rem 0}.crm-alert-row{display:flex;align-items:flex-start;gap:.75rem;padding:.7rem 1.1rem;border-bottom:1px solid var(--glass-border);transition:background .1s}.crm-alert-row:last-child{border-bottom:none}.crm-alert-row:hover{background:var(--glass-bg)}.crm-alert-icon{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.crm-alert-icon.stale{background:#f59e0b1f;color:var(--warning-color)}.crm-alert-icon.payment{background:#ef44441f;color:var(--danger-color)}.crm-alert-title{font-size:.85rem;font-weight:600;color:var(--text-dark)}.crm-alert-sub{font-size:.78rem;color:var(--text-light);margin-top:1px}.crm-empty{padding:1.5rem;text-align:center;font-size:.85rem;color:var(--text-light)}.crm-project-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.1rem;border-bottom:1px solid var(--glass-border);cursor:pointer;transition:background .1s}.crm-project-row:last-child{border-bottom:none}.crm-project-row:hover{background:var(--glass-bg)}.crm-project-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.crm-project-name{font-size:.88rem;font-weight:600;color:var(--text-dark);flex:1}.crm-project-client{font-size:.78rem;color:var(--text-light)}.crm-project-meta{display:flex;align-items:center;gap:.5rem}.crm-badge{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.crm-badge-current{background:#10b9811f;color:var(--success-color)}.crm-badge-on_hold{background:#f59e0b1f;color:var(--warning-color)}.crm-badge-past{background:var(--glass-bg);color:var(--text-light);border:1px solid var(--glass-border)}.crm-badge-pending{background:#f59e0b1f;color:var(--warning-color)}.crm-badge-approved{background:#10b9811f;color:var(--success-color)}.crm-badge-rejected{background:#ef44441f;color:var(--danger-color)}.crm-badge-stale{background:#f59e0b1f;color:var(--warning-color)}.crm-badge-chk-pending{background:#f59e0b1f;color:var(--warning-color);border:1px solid #fcd34d}.crm-badge-chk-mid{background:#ffedd5;color:#9a3412;border:1px solid #fb923c}.crm-badge-chk-paid{background:#10b9811f;color:var(--success-color);border:1px solid #6ee7b7}.crm-list-panel{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:1.25rem}.crm-list-panel-header{padding:.9rem 1.25rem;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.crm-list-panel-header h3{margin:0;font-size:.92rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}.crm-project-full-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--glass-border)}.crm-project-full-row:last-child{border-bottom:none}.crm-project-full-row:hover{background:var(--glass-bg)}.crm-project-full-name{font-size:.9rem;font-weight:600;color:var(--text-dark);flex:1;min-width:0}.crm-project-full-client{font-size:.8rem;color:var(--text-light)}.crm-project-full-date{font-size:.78rem;color:var(--text-light);white-space:nowrap}.crm-stale-warn{font-size:.72rem;color:var(--warning-color);font-weight:600;display:flex;align-items:center;gap:3px}.crm-checkpoint-track{display:flex;align-items:center;gap:.65rem;margin-top:5px}.crm-chk-dot-wrap{display:flex;align-items:center;gap:4px}.crm-chk-dot-wrap:not(:last-child):after{content:"";display:block;width:18px;height:2px;background:var(--border-color);border-radius:2px;margin-left:.65rem}.crm-chk-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;border:2px solid transparent;transition:background .15s,border-color .15s}.crm-chk-dot.paid{background:var(--success-color);border-color:#6ee7b7}.crm-chk-dot.unpaid{background:var(--glass-bg);border-color:var(--glass-border)}.crm-chk-dot-label{font-size:.66rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.03em}.crm-btn-msg{color:var(--primary-color);border-color:var(--primary-color);background:transparent;opacity:.75;transition:opacity .15s,background .15s}.crm-btn-msg:hover{opacity:1;background:#0969da1a}.crm-scope-table{width:100%;border-collapse:collapse}.crm-scope-table th{text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light);padding:.6rem 1rem;border-bottom:1px solid var(--glass-border);background:var(--glass-bg)}.crm-scope-table td{padding:.75rem 1rem;border-bottom:1px solid var(--glass-border);font-size:.85rem;color:var(--text-dark);vertical-align:top}.crm-scope-table tr:last-child td{border-bottom:none}.crm-scope-table tr:hover td{background:var(--glass-bg)}.crm-scope-actions{display:flex;gap:6px}.crm-doc-grid{display:flex;flex-direction:column;gap:0}.crm-doc-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--glass-border);transition:background .1s}.crm-doc-row:last-child{border-bottom:none}.crm-doc-row:hover{background:var(--glass-bg)}.crm-doc-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--glass-bg);display:flex;align-items:center;justify-content:center;color:var(--primary-color);flex-shrink:0}.crm-doc-name{font-size:.88rem;font-weight:600;color:var(--text-dark);flex:1;min-width:0}.crm-doc-meta{font-size:.75rem;color:var(--text-light);margin-top:1px}.crm-doc-actions{display:flex;align-items:center;gap:.5rem}.crm-quote-family{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:1.25rem}.crm-quote-family-header{padding:.85rem 1.25rem;border-bottom:1px solid var(--glass-border);font-size:.88rem;font-weight:700;color:var(--text-dark);background:var(--glass-bg);display:flex;align-items:center;gap:.5rem}.crm-version-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--glass-border);position:relative}.crm-version-row:last-child{border-bottom:none}.crm-version-badge{font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:var(--radius-md);background:var(--glass-bg);color:var(--text-light);border:1px solid var(--glass-border);flex-shrink:0}.crm-version-badge.latest{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.crm-version-number{font-size:.8rem;font-weight:600;color:var(--text-dark)}.crm-version-num{font-size:.82rem;color:var(--text-light)}.crm-version-total{font-size:.9rem;font-weight:700;color:var(--text-dark)}.crm-version-notes{font-size:.78rem;color:var(--text-light);font-style:italic;flex:1;min-width:0}.crm-version-date{font-size:.75rem;color:var(--text-light);white-space:nowrap}.crm-version-actions{display:flex;gap:.5rem}.crm-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-dark);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.crm-btn:hover{background:var(--glass-bg)}.crm-btn:disabled{opacity:.5;cursor:not-allowed}.crm-btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.crm-btn-primary:hover{opacity:.88;background:var(--primary-color)}.crm-btn-danger{background:transparent;color:var(--danger-color);border-color:var(--danger-color)}.crm-btn-danger:hover{background:#ef44441f}.crm-btn-sm{padding:.28rem .65rem;font-size:.75rem}.crm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.crm-modal{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border-radius:var(--radius-sm);padding:1.5rem;width:100%;max-width:480px;box-shadow:0 8px 32px #0003;border:1px solid var(--glass-border)}.crm-modal h3{margin:0 0 1.1rem;font-size:1rem;font-weight:700;color:var(--text-dark)}.crm-field{margin-bottom:.85rem}.crm-field label{display:block;font-size:.78rem;font-weight:600;color:var(--text-light);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.04em}.crm-field input,.crm-field textarea,.crm-field select{width:100%;padding:.5rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--text-dark);font-size:.85rem;box-sizing:border-box;outline:none;transition:border-color .15s}.crm-field input:focus,.crm-field textarea:focus,.crm-field select:focus{border-color:var(--primary-color)}.crm-field textarea{resize:vertical;min-height:72px}.crm-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.crm-modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.25rem}.crm-project-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.crm-project-selector label{font-size:.82rem;font-weight:600;color:var(--text-light)}.crm-project-selector select{padding:.45rem .85rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-dark);font-size:.85rem;outline:none;cursor:pointer}.crm-cat-chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.crm-cat-chip{padding:.3rem .85rem;border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);color:var(--text-light);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s;text-transform:capitalize}.crm-cat-chip:hover{background:var(--glass-bg)}.crm-cat-chip.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.crm-upload-zone{border:2px dashed var(--glass-border);border-radius:var(--radius-sm);padding:1.5rem;text-align:center;cursor:pointer;transition:border-color .15s;color:var(--text-light);font-size:.85rem}.crm-upload-zone:hover{border-color:var(--primary-color);color:var(--text-dark)}.crm-clone-notes{background:var(--glass-bg);border-radius:var(--radius-sm);padding:.85rem 1rem;margin-bottom:1rem}.crm-client-row-clickable{cursor:pointer;transition:background .12s}.crm-client-row-clickable:hover{background:var(--glass-bg)}.crm-client-avatar{width:38px;height:38px;border-radius:var(--radius-sm);flex-shrink:0;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.crm-client-avatar-lg{width:56px;height:56px;border-radius:var(--radius-sm);font-size:1.35rem}.crm-client-detail-page{display:flex;flex-direction:column;gap:1.25rem}.crm-client-detail-back{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0}.crm-client-header-card{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:1.5rem;display:flex;gap:1.25rem;align-items:flex-start}.crm-client-detail-name{margin:0 0 .2rem;font-size:1.25rem;font-weight:700;color:var(--text-dark)}.crm-client-detail-contact{font-size:.9rem;font-weight:500;color:var(--text-light);margin-bottom:.45rem}.crm-client-detail-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.82rem;color:var(--text-dark)}.crm-client-detail-meta span{display:flex;align-items:center;gap:.3rem}.crm-client-detail-notes{margin-top:.6rem;font-size:.82rem;color:var(--text-light);font-style:italic}.crm-client-detail-stats{display:flex;gap:1.5rem;flex-shrink:0;align-self:center}.crm-client-stat{text-align:center}.crm-client-stat span{display:block;font-size:1.125rem;font-weight:700;color:var(--primary-color);line-height:1}.crm-client-stat label{font-size:.72rem;color:var(--text-light);white-space:nowrap}.crm-client-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.crm-panel-full{grid-column:1 / -1}.crm-panel-body-scroll{max-height:240px;overflow-y:auto}.crm-mini-doc-row{display:flex;align-items:flex-start;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--glass-border)}.crm-mini-doc-row:last-child{border-bottom:none}@media (max-width: 768px){.crm-client-detail-grid{grid-template-columns:1fr}.crm-client-header-card{flex-direction:column}.crm-client-detail-stats{align-self:flex-start}}.announcement-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.announcement-modal{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:min(860px,95vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0006;overflow:hidden;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(32px);opacity:0}to{transform:translateY(0);opacity:1}}.announcement-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 16px;border-bottom:1px solid var(--glass-border);flex-shrink:0}.announcement-modal-header h2{margin:0;font-size:1.35rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:10px}.announcement-badge{background:var(--primary-color);color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius-md)}.announcement-modal-body{overflow-y:auto;padding:28px;flex:1;display:flex;flex-direction:column;gap:24px}.announcement-title{font-size:1.6rem;font-weight:700;color:var(--text-dark);margin:0;line-height:1.3}.announcement-content-text{font-size:1.05rem;line-height:1.7;color:var(--text-dark);white-space:pre-wrap;margin:0}.announcement-poster-img{width:100%;max-height:420px;object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--glass-border)}.announcement-meta{font-size:.8rem;color:var(--text-light);margin-top:auto}.announcement-modal-footer{padding:16px 28px;border-top:1px solid var(--glass-border);display:flex;justify-content:flex-end;gap:12px;flex-shrink:0}.btn-dismiss{background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);padding:10px 28px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-dismiss:hover{background:var(--primary-color)}.announcement-pagination{display:flex;align-items:center;gap:8px}.pagination-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color);cursor:pointer;border:none;padding:0;transition:background .2s}.pagination-dot.active{background:var(--primary-color)}.announcement-nav-btn{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:6px 12px;cursor:pointer;font-size:.85rem;color:var(--text-dark);transition:background .2s}.announcement-nav-btn:hover{background:var(--glass-bg)}.announcement-nav-btn:disabled{opacity:.35;cursor:default}.announcement-counter{font-size:.85rem;color:var(--text-light)}[data-theme=dark] .announcement-modal{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm)}[data-theme=dark] .announcement-nav-btn:hover{background:var(--glass-bg)}.join-code-input{font-family:Inter,monospace;font-size:1rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.join-code-input::placeholder{text-transform:none;letter-spacing:normal;font-family:inherit;font-size:.9rem;font-weight:400}.join-error{font-size:.85rem;color:var(--danger-color);margin:-8px 0 4px;padding:8px 12px;background:#ef44441a;border-radius:var(--radius-sm);border-left:3px solid var(--danger-color);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm)}
