:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--text-primary:#2c3e50;--text-secondary:#6c757d;--border-color:#dee2e6;--accent-color:#ffc400;--accent-hover:#ffb300;--shadow:0 2px 10px #0000001a}[data-theme=dark]{--bg-primary:#25211b;--bg-secondary:#191612;--text-primary:#ecf0f1;--text-secondary:#c7c3bd;--border-color:#68634a;--accent-color:#ffc400;--accent-hover:#ffb300;--shadow:0 2px 10px #0000004d}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8f9fa;background:var(--bg-secondary);color:#2c3e50;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);transition:background-color .3s ease,color .3s ease;width:100%}#root,body,html{height:100%}*,:after,:before{box-sizing:border-box}button,input,select,textarea{font-size:16px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}.auth-screen{align-items:center;background:#121212;display:flex;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:20px}.auth-container{animation:slideIn .5s ease-out;background:#1e1e1e;border-radius:20px;box-shadow:0 20px 60px #00000073;max-width:450px;padding:40px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.logo-section{margin-bottom:30px;text-align:center}.auth-logo{height:auto;margin-bottom:15px;object-fit:contain;width:140px}.logo-section h1{color:#fff;font-size:24px;font-weight:600;margin-bottom:5px}.logo-section p{color:#bdbdbd;font-size:14px}.auth-tabs{background:#2a2a2a;border-radius:8px;display:flex;margin-bottom:30px;padding:4px}.tab-btn{background:#0000;border:none;border-radius:6px;color:#bdbdbd;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:12px 20px;transition:all .3s ease}.tab-btn.active{background:#fff;box-shadow:0 2px 6px #0003;color:#1c1c1c}.auth-form{display:none}.auth-form.active{animation:fadeIn .3s ease-in;display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.input-group{margin-bottom:20px;position:relative}.input-group .input-icon,.input-group i{color:#9e9e9e;left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.input-group .input-icon{display:inline-flex}.input-group input{background:#1a1a1a;border:2px solid #333;border-radius:8px;color:#fff;font-size:16px;padding:15px 50px 15px 45px;transition:all .3s ease;width:100%}.input-group input:focus{border-color:#ffc400;box-shadow:0 0 0 3px #ffc40033;outline:none}.password-toggle{background:none;border:none;color:#bdbdbd;cursor:pointer;font-size:18px;padding:8px;position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:3}.checkbox-group{align-items:center;display:flex;margin-bottom:25px}.checkbox-group input[type=checkbox]{cursor:pointer;margin-right:10px;transform:scale(1.2)}.checkbox-group label{color:#e0e0e0;cursor:pointer;font-size:14px}.submit-btn{background:#ffc400;border:none;border-radius:8px;color:#1c1c1c;cursor:pointer;font-size:16px;font-weight:600;padding:15px;transition:all .3s ease;width:100%}.submit-btn:hover{background:#ffb300;box-shadow:0 4px 15px #ffc40059;transform:translateY(-2px)}.registration-note{align-items:flex-start;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;display:flex;gap:10px;margin-top:20px;padding:15px}.registration-note i{color:#ffc400;margin-top:2px}.registration-note p{color:#e0e0e0;font-size:13px;line-height:1.4;margin:0}.error-message{background:#fee2e2;border:2px solid #fca5a5;border-radius:8px;color:#991b1b}.error-message,.success-message{font-size:14px;margin-bottom:20px;padding:12px 15px}.success-message{background:#d1fae5;border:2px solid #6ee7b7;border-radius:8px;color:#065f46}@media (max-width:768px){.auth-container{padding:30px 20px}.input-group input{font-size:14px;padding:12px 45px 12px 40px}}.employee-layout{background:var(--bg-secondary);min-height:100vh}.employee-nav{background:var(--bg-primary);box-shadow:var(--shadow);justify-content:space-between;padding:15px 30px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.employee-nav,.nav-brand{align-items:center;display:flex}.nav-brand{background:none;border:none;cursor:pointer;gap:20px;padding:0}.nav-logo{height:36px;max-width:160px;object-fit:contain;width:auto}.nav-brand span{color:var(--accent-color);font-size:18px;font-weight:600}.nav-actions{gap:15px}.nav-actions,.notification-btn{align-items:center;display:flex}.notification-btn{background:none;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;height:40px;justify-content:center;padding:8px;position:relative;width:40px}.notification-badge{background:#ef4444;border-radius:999px;color:#fff;font-size:.65rem;padding:2px 6px;position:absolute;right:-4px;top:-4px}.theme-toggle{align-items:center;background:none;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;height:40px;justify-content:center;padding:8px;transition:all .3s ease;width:40px}.theme-toggle:hover{background:var(--bg-secondary)}.user-menu-container{position:relative}.user-btn{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:8px;transition:all .3s ease}.user-btn:hover{background:var(--bg-secondary)}.user-avatar{align-items:center;background:var(--accent-color);border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:600;height:35px;justify-content:center;width:35px}.user-name{color:var(--text-primary);font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown{animation:slideDown .2s ease-out;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow);min-width:200px;padding:10px 0;position:absolute;right:0;top:calc(100% + 10px);z-index:2000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-dropdown button{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 20px;text-align:left;text-decoration:none;transition:all .3s ease;width:100%}.user-dropdown button:hover{background:var(--bg-secondary)}.user-dropdown hr{border:none;border-top:1px solid var(--border-color);margin:5px 0}.user-dropdown .logout-btn{color:#dc3545!important}.user-dropdown .logout-btn:hover{background:#dc35451a}.employee-main{min-height:calc(100vh - 70px)}.employee-backbar{padding:16px 30px 0}.employee-back-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow);color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:8px 12px}.employee-back-btn:hover{background:var(--bg-secondary)}@media (max-width:768px){.employee-nav{padding:15px 20px}.nav-brand span,.user-name{display:none}.employee-backbar{padding:12px 20px 0}}@media (max-width:480px){.nav-logo{height:30px;max-width:120px}.user-avatar{font-size:12px;height:32px;width:32px}.employee-back-btn{justify-content:center;width:100%}}.employee-dashboard{margin:0 auto;max-width:1200px;padding:30px}.dashboard-welcome{margin-bottom:40px;text-align:center}.dashboard-welcome h1{color:var(--text-primary);font-size:32px;margin-bottom:10px}.dashboard-welcome p{color:var(--text-secondary);font-size:16px}.dashboard-section{margin-bottom:30px}.dashboard-panels{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.dashboard-panel{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:20px}.panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.panel-header h3{color:var(--text-primary);font-size:15px;margin:0}.panel-header button{background:none;border:none;color:var(--accent-color);cursor:pointer;font-weight:600}.dashboard-panel ul{grid-gap:8px;display:grid;gap:8px;list-style:none;margin:0;padding:0}.dashboard-panel li{color:var(--text-primary);display:flex;font-size:14px;gap:12px;justify-content:space-between}.panel-meta{font-size:12px}.panel-empty,.panel-meta{color:var(--text-secondary)}.panel-empty{font-size:14px;margin:0}.quick-actions{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow);margin-bottom:30px;padding:30px}.quick-actions h2{color:var(--text-primary);margin-bottom:25px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.action-card{align-items:center;background:var(--bg-secondary);border:none;border-radius:12px;color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:25px 20px;text-align:center;transition:all .3s ease}.action-card:hover{background:var(--accent-color);box-shadow:0 4px 20px #00000026;color:#fff;transform:translateY(-3px)}.action-icon{background:none;border-radius:0;color:inherit;font-size:28px;height:auto;width:auto}.action-card h3{color:inherit;font-size:16px;font-weight:500;margin:0}.action-card p{color:inherit;font-size:14px;margin:0;opacity:.9}.dashboard-info{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:32px}.info-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:20px}.info-card h3{color:var(--text-secondary);font-size:14px;font-weight:500;margin-bottom:8px}.info-card p{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}@media (max-width:768px){.employee-dashboard{padding:20px 15px}.actions-grid{grid-template-columns:repeat(2,1fr)}.dashboard-welcome h1{font-size:28px}.quick-actions{padding:20px}}@media (max-width:480px){.dashboard-welcome h1{font-size:24px}.actions-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.action-card{padding:20px 15px}}.employee-documents{margin:0 auto;max-width:1200px;padding:24px}.documents-header{margin-bottom:32px}.documents-header h1{color:var(--text-primary);font-size:2rem;font-weight:700;margin:0 0 8px}.documents-header p{color:var(--text-secondary);font-size:.9375rem;margin:0}.loading{font-size:1.125rem;padding:60px 20px}.empty-state{align-items:center;background:var(--bg-primary);border:2px dashed var(--border-color);display:flex;flex-direction:column;justify-content:center;padding:80px 32px}.empty-state svg{color:var(--text-secondary);margin-bottom:16px;opacity:.5}.empty-state h3{color:var(--text-primary);font-size:1.25rem;margin:0 0 8px}.empty-state p{margin:0}.documents-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.document-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;gap:16px;padding:24px;transition:all .2s}.document-card:hover{border-color:var(--accent-color);box-shadow:0 4px 12px #0000001a}.document-icon{align-items:center;align-self:flex-start;background:var(--accent-color);border-radius:10px;color:#fff;display:flex;height:56px;justify-content:center;width:56px}[data-theme=dark] .document-icon{color:#0f172a}.document-info{flex:1 1}.document-info h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 8px}.document-description{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 12px}.document-meta{align-items:center;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:8px;margin-bottom:8px}.for-all-badge{background:linear-gradient(135deg,#10b98120,#10b98110);border:1px solid #10b981;border-radius:6px;color:#10b981;display:inline-block;font-size:.75rem;font-weight:600;padding:4px 12px}.download-btn{align-items:center;background:var(--accent-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;text-decoration:none;transition:all .2s}.download-btn:hover{background:var(--accent-hover);box-shadow:0 4px 12px #ffd7004d;transform:translateY(-2px)}[data-theme=dark] .download-btn{background:var(--accent-color);color:#0f172a}[data-theme=dark] .download-btn:hover{background:var(--accent-hover)}.email-access-page{margin:0 auto;max-width:1200px;padding:24px}.page-header{gap:16px;margin-bottom:32px}.back-button,.page-header{align-items:center;display:flex}.back-button{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;gap:8px;padding:10px 16px;transition:all .2s}.back-button:hover{background:var(--bg-primary);border-color:var(--accent-color)}.page-header h1{color:var(--text-primary);font-size:2rem;margin:0}.loading-container{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-color);height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:60px 20px;text-align:center}.empty-icon{color:var(--text-secondary);margin-bottom:24px;opacity:.5}.empty-state h2{color:var(--text-primary);font-size:24px;margin:0 0 12px}.empty-state p{color:var(--text-secondary);margin:8px 0}.credentials-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:32px;padding:32px}.credentials-section h2{color:var(--text-primary);font-size:1.5rem;margin:0 0 24px}.credentials-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.credential-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:20px}.credential-card label{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:12px;text-transform:uppercase}.credential-value{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:8px;padding:14px}.credential-text{color:var(--text-primary);flex:1 1;font-family:Courier New,monospace;font-size:16px;word-break:break-all}.credential-text.password{font-size:20px;letter-spacing:3px}.copy-btn,.toggle-btn{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:12px;justify-content:center;min-width:36px;padding:8px;transition:all .2s;white-space:nowrap}.copy-btn:hover,.toggle-btn:hover{background:var(--accent-color);border-color:var(--accent-color);color:#fff}[data-theme=dark] .copy-btn:hover,[data-theme=dark] .toggle-btn:hover{color:#0f172a}.webmail-button{align-items:center;background:var(--accent-color);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:16px 24px;transition:all .2s;width:100%}.webmail-button:hover{box-shadow:0 4px 12px #ffd7004d;transform:translateY(-2px)}[data-theme=dark] .webmail-button{color:#0f172a}.tutorial-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:32px;padding:32px}.tutorial-section h2{color:var(--text-primary);font-size:1.5rem;margin:0 0 24px}.tutorial-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}.tab-button{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s}.tab-button.active,.tab-button:hover{border-color:var(--accent-color)}.tab-button.active{background:var(--accent-color);color:#fff}[data-theme=dark] .tab-button.active{color:#0f172a}.tutorial-content{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:32px}.tutorial-tab h3{color:var(--text-primary);font-size:1.5rem;margin:0 0 16px}.intro{color:var(--text-secondary);font-size:16px;margin-bottom:32px}.steps{display:flex;flex-direction:column;gap:20px}.step{align-items:flex-start;display:flex;gap:16px}.step-number{align-items:center;background:var(--accent-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:36px;justify-content:center;width:36px}[data-theme=dark] .step-number{color:#0f172a}.step-content{flex:1 1;padding-top:4px}.step-content h4{color:var(--text-primary);font-size:18px;margin:0 0 8px}.step-content p{color:var(--text-secondary);line-height:1.6;margin:4px 0}.step-content ul{color:var(--text-secondary);margin:8px 0;padding-left:20px}.step-content code{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--accent-color);font-family:Courier New,monospace;font-size:14px;padding:2px 8px}.step-content a{color:var(--accent-color);font-weight:600;text-decoration:none}.step-content a:hover{text-decoration:underline}.tip{background:#ffd7001a;border-left:3px solid var(--accent-color);border-radius:4px;font-style:italic;margin-top:8px;padding:12px}.inline-copy{background:var(--accent-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;margin-top:8px;padding:6px 12px;transition:all .2s}.inline-copy:hover{transform:translateY(-1px)}[data-theme=dark] .inline-copy{color:#0f172a}.program-section{border-bottom:1px solid var(--border-color);margin-bottom:40px;padding-bottom:40px}.program-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.program-section h4{color:var(--text-primary);font-size:1.25rem;margin:0 0 12px}.recommended{color:var(--accent-color);font-weight:600;margin-bottom:16px}.manual-settings{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:24px;padding:20px}.manual-settings h5{color:var(--text-primary);margin:0 0 16px}.settings-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.setting-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:16px}.setting-item strong{color:var(--text-primary);display:block;margin-bottom:8px}.setting-item p{color:var(--text-secondary);font-size:14px;margin:4px 0}.setting-item code{background:var(--bg-secondary);border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:2px 6px}.help-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:32px}.help-section h3{font-size:1.5rem;margin:0 0 24px}.help-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.help-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:10px;padding:20px}.help-card h4{color:gold;font-size:16px;margin:0 0 12px}.help-card p{font-size:14px;line-height:1.6;margin:0}@media (max-width:768px){.email-access-page{padding:16px}.page-header h1{font-size:1.5rem}.credentials-section,.tutorial-content,.tutorial-section{padding:20px}.credentials-cards{grid-template-columns:1fr}.tutorial-tabs{flex-direction:column}.tab-button{justify-content:center;width:100%}.help-cards,.settings-grid{grid-template-columns:1fr}}.employee-profile{margin:0 auto;max-width:800px;padding:24px}.loading{color:var(--text-secondary);padding:40px;text-align:center}.profile-header{gap:16px;margin-bottom:32px}.back-btn,.profile-header{align-items:center;display:flex}.back-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.back-btn:hover{background:var(--bg-primary);border-color:var(--accent-color);transform:translateX(-2px)}.profile-header h1{color:var(--text-primary);font-size:1.875rem;font-weight:700}.profile-form{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);gap:24px;padding:32px}.avatar-section,.profile-form{display:flex;flex-direction:column}.avatar-section{align-items:center;background:var(--bg-secondary);border-radius:12px;gap:12px;padding:20px}.avatar-section label{color:var(--text-primary);font-size:1rem;font-weight:600}.avatar-upload{flex-direction:column;gap:16px}.avatar-preview,.avatar-upload{align-items:center;display:flex}.avatar-preview{background:var(--bg-primary);border:3px solid var(--accent-color);border-radius:50%;color:var(--text-secondary);height:120px;justify-content:center;overflow:hidden;width:120px}.avatar-preview img{height:100%;object-fit:cover;width:100%}.upload-btn{align-items:center;background:var(--accent-color);border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.upload-btn:hover{background:var(--accent-hover);transform:translateY(-2px)}[data-theme=dark] .upload-btn{color:#0f172a}.avatar-section small{color:var(--text-secondary);font-size:.75rem;text-align:center}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-primary);font-size:.875rem;font-weight:500}.form-group input,.form-group textarea{background:var(--bg-secondary);border:1.5px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .2s}.form-group textarea{min-height:100px;resize:vertical}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #2c5aa01a;outline:none}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #3498db33}.form-group small{color:var(--text-secondary);font-size:.75rem}.disabled-input{background:var(--bg-secondary)!important;cursor:not-allowed;opacity:.6}.save-btn{align-items:center;background:var(--accent-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;margin-top:8px;padding:14px 24px;transition:all .2s}.save-btn.secondary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.save-btn.secondary:hover:not(:disabled){background:var(--bg-primary);box-shadow:none}.card-settings{grid-gap:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:grid;gap:16px;padding:18px}.card-settings h3{color:var(--text-primary);margin:0}.card-preview{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.card-preview span{color:var(--text-secondary);display:block;font-size:.75rem}.card-preview strong{color:var(--text-primary);display:block;font-size:.95rem;word-break:break-all}.save-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 4px 12px #2c5aa04d;transform:translateY(-2px)}.save-btn:disabled{cursor:not-allowed;opacity:.6}[data-theme=dark] .save-btn{color:#fff}[data-theme=dark] .save-btn:hover:not(:disabled){box-shadow:0 4px 12px #3498db66}@media (max-width:768px){.employee-profile{padding:16px}.profile-form{padding:24px 20px}.profile-header h1{font-size:1.5rem}.avatar-preview{height:100px;width:100px}}.employee-leads,.employee-leads-detail{color:var(--text-primary);margin:0 auto;max-width:1200px;padding:2rem}.employee-leads-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.employee-leads-detail-header h1,.employee-leads-header h1{font-size:1.5rem;margin:0}.employee-leads-header p{color:var(--text-secondary);margin:.35rem 0 0}.employee-leads-toolbar{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}.employee-leads-search{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;display:flex;flex:1 1;gap:.5rem;min-width:260px;padding:.5rem .75rem}.employee-leads-search input{background:#0000;border:none;color:var(--text-primary);font-size:.9rem;outline:none;width:100%}.employee-leads-filter{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);font-size:.9rem;padding:.55rem .75rem}.employee-leads-list{grid-gap:1rem;display:grid;gap:1rem}.employee-leads-card{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;text-align:left}.employee-leads-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.employee-leads-card-header h3{font-size:1rem;margin:0}.employee-leads-date{color:var(--text-secondary);font-size:.75rem}.employee-leads-status{border-radius:999px;font-size:.75rem;font-weight:600;padding:.25rem .6rem;white-space:nowrap}.employee-leads-card-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem 1.5rem}.employee-leads-card-meta span{align-items:center;display:inline-flex;gap:.4rem}.employee-leads-card-action{align-items:center;color:var(--text-primary);display:flex;font-size:.85rem;justify-content:space-between}.employee-leads-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:2rem;text-align:center}.employee-leads-detail-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.employee-leads-create-btn{background:var(--text-primary);border-radius:10px;color:var(--bg-primary);padding:.55rem .9rem}.employee-leads-back,.employee-leads-create-btn{align-items:center;border:none;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem}.employee-leads-back{background:#0000;color:var(--text-primary);margin-bottom:1rem}.employee-leads-detail-card{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;margin-bottom:1rem;padding:1rem 1.25rem}.employee-leads-detail-header-row{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.employee-leads-appointment-btn{align-items:center;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.5rem .8rem}.employee-leads-appointments{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:.75rem}.employee-leads-appointment-row{grid-gap:.5rem;align-items:center;background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);cursor:pointer;display:grid;font-size:.85rem;gap:.5rem;grid-template-columns:1.4fr 1fr 1fr 1.2fr;padding:.6rem .75rem;text-align:left}.employee-leads-notes-input{display:flex;flex-direction:column;gap:.6rem}.employee-leads-notes-input textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);font-weight:400;padding:.6rem .75rem;resize:vertical}.employee-leads-notes-save{align-items:center;align-self:flex-start;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.5rem .8rem}.employee-leads-notes-save:disabled{cursor:not-allowed;opacity:.6}.employee-leads-empty{color:var(--text-secondary);margin:.75rem 0 0}.employee-leads-detail-card h3{font-size:.95rem;margin:0 0 .75rem}.employee-leads-detail-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem 1.5rem}.employee-leads-address-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:.75rem}.employee-leads-address-grid label{display:flex;flex-direction:column;font-weight:600;gap:.35rem}.employee-leads-address-grid input{padding:.6rem .75rem}.employee-leads-address-grid input,.employee-leads-note{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary)}.employee-leads-note{font-size:.9rem;padding:.75rem;resize:vertical;width:100%}.employee-leads-save{align-items:center;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;margin-top:.75rem;padding:.6rem 1rem}.employee-leads-edit{display:flex;flex-direction:column;gap:1.25rem}.employee-leads-edit-section{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:1rem 1.25rem}.employee-leads-edit-section h3{font-size:.95rem;margin:0 0 .75rem}.employee-leads-edit-grid{grid-gap:.75rem 1rem;display:grid;gap:.75rem 1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.employee-leads-edit-grid label,.employee-leads-edit-notes{color:var(--text-primary);display:flex;flex-direction:column;font-weight:600;gap:.35rem}.employee-leads-edit-grid input,.employee-leads-edit-notes textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);font-weight:400;padding:.6rem .75rem}.employee-leads-edit-notes textarea{min-height:120px;resize:vertical}.employee-leads-notes-history{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-secondary);font-size:.85rem;margin-top:1rem;max-height:200px;overflow-y:auto;padding:.75rem}[data-theme=dark] .employee-leads-address-grid input,[data-theme=dark] .employee-leads-appointment-row,[data-theme=dark] .employee-leads-card,[data-theme=dark] .employee-leads-detail-card,[data-theme=dark] .employee-leads-edit-grid input,[data-theme=dark] .employee-leads-edit-notes textarea,[data-theme=dark] .employee-leads-edit-section,[data-theme=dark] .employee-leads-filter,[data-theme=dark] .employee-leads-note,[data-theme=dark] .employee-leads-notes-history,[data-theme=dark] .employee-leads-notes-input textarea,[data-theme=dark] .employee-leads-search,[data-theme=dark] .employee-leads-state{border-color:#ffffff1f}@media (max-width:768px){.employee-leads,.employee-leads-detail{padding:1.25rem}.employee-leads-detail-header{align-items:flex-start;flex-direction:column}.employee-leads-appointment-row{gap:.35rem;grid-template-columns:1fr}}.employee-appointments{color:var(--text-primary);margin:0 auto;max-width:1200px;padding:2rem}.employee-appointments-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.employee-appointments-create{align-items:center;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.6rem 1rem}.employee-appointments-header h1{font-size:1.5rem;margin:0}.employee-appointments-header p{color:var(--text-secondary);margin:.35rem 0 0}.employee-appointments-tabs{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:999px;display:inline-flex;gap:.5rem;margin-bottom:1rem;padding:.25rem}.employee-appointments-tab{background:#0000;border:none;border-radius:999px;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.45rem .9rem}.employee-appointments-tab.active{background:var(--text-primary);color:var(--bg-primary)}.employee-appointments-toolbar{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}.employee-appointments-modal{align-items:flex-start;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:32px 20px;position:fixed;z-index:2000}.employee-appointments-modal-content{background:var(--bg-primary);border-radius:18px;box-shadow:0 30px 80px #0f172a40;max-height:calc(100vh - 64px);overflow:auto;padding:22px 24px;width:min(1000px,100%)}.employee-appointments-modal-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.employee-appointments-modal-header h2{margin:0}.employee-appointments-modal-header p{color:var(--text-secondary);margin:4px 0 0}.employee-appointments-modal-close{background:var(--bg-secondary);border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;padding:6px 8px}.employee-appointments-modal-body{display:flex;flex-direction:column;gap:18px;margin-top:18px}.employee-appointments-section{display:flex;flex-direction:column;gap:10px}.employee-appointments-select{background:var(--bg-primary);border-radius:10px;color:var(--text-primary);padding:.65rem .75rem;width:100%}.employee-appointments-select,.employee-appointments-summary{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb)}.employee-appointments-summary{grid-gap:4px;background:var(--bg-secondary);border-radius:10px;color:var(--text-secondary);display:grid;font-size:.9rem;gap:4px;padding:.75rem .9rem}.employee-appointments-hint{color:var(--text-secondary);font-size:.85rem;margin:0}.employee-appointments-actions{gap:12px;justify-content:flex-end}.employee-appointments-primary,.employee-appointments-secondary{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.6rem 1rem}.employee-appointments-primary{background:var(--text-primary);color:var(--bg-primary)}.employee-appointments-secondary{background:var(--bg-secondary);color:var(--text-primary)}.employee-appointments-filter,.employee-appointments-search{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;display:flex;gap:.5rem;padding:.5rem .75rem}.employee-appointments-filter select,.employee-appointments-search input{background:#0000;border:none;color:var(--text-primary);font-size:.9rem;outline:none}.employee-appointments-list{grid-gap:1rem;display:grid;gap:1rem}.employee-appointments-card{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;text-align:left}.employee-appointments-card-header{display:flex;gap:1rem;justify-content:space-between}.employee-appointments-card-header h3{font-size:1rem;margin:0}.employee-appointments-status{border-radius:999px;font-size:.75rem;font-weight:600;padding:.25rem .6rem;white-space:nowrap}.status-proposed,.status-requested{background:#3b82f61f;color:#2563eb}.status-confirmed{background:#10b98126;color:#059669}.status-rescheduled{background:#f59e0b26;color:#b45309}.status-completed{background:#10b98126;color:#059669}.status-canceled,.status-no_show{background:#ef444426;color:#dc2626}.employee-appointments-card-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.employee-appointments-approval,.employee-appointments-card-meta{color:var(--text-secondary);font-size:.85rem}.employee-appointments-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:2rem;text-align:center}.employee-appointments-back{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;margin-bottom:1rem}.employee-appointments-actions-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.employee-appointments-action-btn{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.6rem 1rem}.employee-appointments-card h3{margin:0}.employee-appointments-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.employee-appointments-grid label,.employee-appointments-notes{display:flex;flex-direction:column;font-weight:600;gap:.4rem}.employee-appointments-grid input,.employee-appointments-grid select,.employee-appointments-notes textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);font-size:.9rem;padding:.6rem .75rem}.employee-appointments-notes textarea{min-height:90px;resize:vertical}.employee-appointments-info-grid{grid-gap:.75rem;color:var(--text-secondary);display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.employee-appointments-info-spaced{margin-top:.75rem}.employee-appointments-info-item{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);padding:.6rem .75rem}.employee-appointments-save{align-items:center;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.6rem 1rem}.appointment-form-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.appointment-form-steps{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.appointment-form-step{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:999px;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.45rem .9rem}.appointment-form-step.active{background:var(--text-primary);border-color:#0000;color:var(--bg-primary)}.appointment-form-card{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;margin-bottom:1rem;padding:1rem 1.25rem}.appointment-form-grid{grid-gap:.75rem 1rem;display:grid;gap:.75rem 1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.appointment-form-grid label,.appointment-form-textarea{color:var(--text-primary);display:flex;flex-direction:column;font-weight:600;gap:.35rem}.appointment-form-grid input,.appointment-form-textarea textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);font-weight:400;padding:.6rem .75rem}.appointment-form-textarea textarea{min-height:140px;resize:vertical}.appointment-form-actions{display:flex;gap:.75rem;justify-content:space-between}.employee-appointments-actions{display:flex;gap:.75rem;margin-top:1rem}.employee-appointments-accept,.employee-appointments-decline{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.6rem 1rem}.employee-appointments-accept{background:#10b981;color:#fff}.employee-appointments-decline{background:#ef4444;color:#fff}[data-theme=dark] .appointment-form-card,[data-theme=dark] .appointment-form-grid input,[data-theme=dark] .appointment-form-step,[data-theme=dark] .appointment-form-textarea textarea,[data-theme=dark] .employee-appointments-action-btn,[data-theme=dark] .employee-appointments-card,[data-theme=dark] .employee-appointments-filter,[data-theme=dark] .employee-appointments-grid input,[data-theme=dark] .employee-appointments-grid select,[data-theme=dark] .employee-appointments-info-item,[data-theme=dark] .employee-appointments-notes textarea,[data-theme=dark] .employee-appointments-search,[data-theme=dark] .employee-appointments-select,[data-theme=dark] .employee-appointments-state,[data-theme=dark] .employee-appointments-summary,[data-theme=dark] .employee-appointments-tabs{border-color:#ffffff1f}@media (max-width:768px){.employee-appointments{padding:1.25rem}.employee-appointments-header{align-items:flex-start;flex-direction:column}.appointment-form-header{align-items:stretch;flex-direction:column}.appointment-form-header .employee-appointments-save{justify-content:center;width:100%}}.installer-availability{color:var(--text-primary);margin:0 auto;max-width:1100px;padding:2rem}.installer-availability-header h1{font-size:1.6rem;margin:0}.installer-availability-header p{color:var(--text-secondary);margin:.35rem 0 0}.installer-availability-form{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:1.5rem 0}.installer-availability-form label{display:flex;flex-direction:column;font-weight:600;gap:.4rem}.installer-availability-form input{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);padding:.6rem .75rem}.availability-primary{align-items:center;background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.65rem 1rem}.installer-availability-list{grid-gap:1rem;display:grid;gap:1rem}.installer-availability-card{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:1rem 1.25rem}.installer-availability-date{align-items:center;display:inline-flex;font-weight:600;gap:.5rem;margin-bottom:.75rem}.installer-availability-slots{grid-gap:.5rem;display:grid;gap:.5rem}.installer-availability-slot{align-items:center;background:var(--bg-secondary);border-radius:10px;color:var(--text-secondary);display:flex;justify-content:space-between;padding:.5rem .75rem}.installer-availability-slot button{background:#0000;border:none;color:var(--text-secondary);cursor:pointer}.installer-availability-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:1.5rem;text-align:center}[data-theme=dark] .installer-availability-card,[data-theme=dark] .installer-availability-form input,[data-theme=dark] .installer-availability-state{border-color:#ffffff1f}@media (max-width:768px){.installer-availability{padding:1.25rem}}.notifications-page{color:var(--text-primary);margin:0 auto;max-width:1000px;padding:2rem}.notifications-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.notifications-header h1{font-size:1.6rem;margin:0}.notifications-header p{color:var(--text-secondary);margin:.35rem 0 0}.notifications-refresh{align-items:center;background:var(--bg-secondary);border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.6rem 1rem}.notifications-list{grid-gap:.75rem;display:grid;gap:.75rem;margin-top:1.5rem}.notification-card{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;cursor:pointer;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem;text-align:left}.notification-card.unread{background:#2563eb14;border-color:#2563eb}.notification-card h3{margin:0 0 .3rem}.notification-card p{color:var(--text-secondary);margin:0}.notifications-empty{grid-gap:.5rem;background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);display:grid;gap:.5rem;justify-items:center;margin-top:2rem;padding:2rem;text-align:center}@media (max-width:768px){.notifications-page{padding:1.25rem}.notifications-header{align-items:flex-start;flex-direction:column}}.tasks-page{margin:0 auto;max-width:1100px;padding:2rem}.tasks-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.tasks-header h1{margin:0 0 .35rem}.tasks-header-actions{display:flex;gap:.75rem}.tasks-primary,.tasks-secondary{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.5rem .9rem}.tasks-primary{background:var(--text-primary);color:var(--bg-primary)}.tasks-secondary{background:var(--bg-secondary);color:var(--text-primary)}.tasks-create,.tasks-secondary{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb)}.tasks-create{grid-gap:.8rem;background:var(--bg-primary);border-radius:12px;display:grid;gap:.8rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.tasks-create-grid{grid-gap:.75rem 1rem;display:grid;gap:.75rem 1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tasks-create label{color:var(--text-primary);display:flex;flex-direction:column;font-weight:600;gap:.35rem}.tasks-create input,.tasks-create select,.tasks-create textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);padding:.6rem .75rem}.tasks-create textarea{resize:vertical}.tasks-create-actions{display:flex;gap:.75rem;justify-content:flex-end}.tasks-filters{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:999px;display:inline-flex;gap:.5rem;margin-bottom:1.5rem;padding:.35rem}.tasks-filters button{background:#0000;border:none;border-radius:999px;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.35rem .75rem}.tasks-filters button.active{background:var(--text-primary);color:var(--bg-primary)}.tasks-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:2rem;text-align:center}.tasks-list{grid-gap:.75rem;display:grid;gap:.75rem}.task-card{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.task-card h3{margin:0 0 .35rem}.task-card p{margin:0 0 .5rem}.task-card p,.task-meta{color:var(--text-secondary)}.task-meta{display:flex;flex-wrap:wrap;font-size:.8rem;gap:.6rem 1rem}.task-complete{align-items:center;background:var(--bg-secondary);border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.4rem .7rem}.task-priority{background:#6366f11f;border-radius:999px;color:#4338ca;padding:.15rem .5rem;text-transform:capitalize}.task-priority.high{background:#ef44441f;color:#b91c1c}.task-priority.low{background:#10b9811f;color:#047857}@media (max-width:768px){.tasks-page{padding:1.25rem}.task-card,.tasks-header{align-items:flex-start;flex-direction:column}}.tickets-page{margin:0 auto;max-width:1100px;padding:2rem}.tickets-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.tickets-header h1{margin:0 0 .35rem}.tickets-header-actions{display:flex;gap:.75rem}.tickets-primary,.tickets-secondary{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.5rem .9rem}.tickets-primary{background:var(--text-primary);color:var(--bg-primary)}.tickets-secondary{background:var(--bg-secondary);color:var(--text-primary)}.tickets-create,.tickets-secondary{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb)}.tickets-create{grid-gap:.8rem;background:var(--bg-primary);border-radius:12px;display:grid;gap:.8rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.tickets-create label{color:var(--text-primary);display:flex;flex-direction:column;font-weight:600;gap:.35rem}.tickets-create input,.tickets-create select,.tickets-create textarea{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);padding:.6rem .75rem}.tickets-create textarea{resize:vertical}.tickets-create-actions{display:flex;gap:.75rem;justify-content:flex-end}.tickets-filters{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:999px;display:inline-flex;gap:.5rem;margin-bottom:1.5rem;padding:.35rem}.tickets-filters button{background:#0000;border:none;border-radius:999px;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.35rem .75rem}.tickets-filters button.active{background:var(--text-primary);color:var(--bg-primary)}.tickets-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:2rem;text-align:center}.tickets-list{grid-gap:.75rem;display:grid;gap:.75rem}.ticket-card{align-items:center;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.ticket-actions{display:flex;flex-wrap:wrap;gap:.6rem}.ticket-link{background:#0000;border:none;color:var(--text-primary);cursor:pointer;font-weight:600;padding:.35rem .4rem}.ticket-card h3{margin:0 0 .35rem}.ticket-card p{color:var(--text-secondary);margin:0 0 .5rem}.ticket-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.8rem;gap:.6rem 1rem}.ticket-close{align-items:center;background:var(--bg-secondary);border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:.4rem .7rem}.ticket-priority{background:#6366f11f;border-radius:999px;color:#4338ca;padding:.15rem .5rem;text-transform:capitalize}.ticket-priority.high{background:#ef44441f;color:#b91c1c}.ticket-priority.low{background:#10b9811f;color:#047857}.ticket-detail{grid-gap:1.25rem;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:16px;display:grid;gap:1.25rem;padding:1.5rem}.ticket-detail-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.ticket-detail-actions{display:inline-flex;flex-wrap:wrap;gap:.6rem}.ticket-detail-actions button{border:none;border-radius:10px;cursor:pointer;font-weight:600;padding:.45rem .85rem}.ticket-detail-actions .primary{background:var(--text-primary);color:var(--bg-primary)}.ticket-detail-actions .secondary{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);color:var(--text-primary)}.ticket-messages{grid-gap:.75rem;display:grid;gap:.75rem}.ticket-message{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;max-width:720px;padding:.75rem 1rem}.ticket-message.own{background:#6366f11f;border-color:#6366f140;margin-left:auto}.ticket-message-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.75rem;gap:.5rem;justify-content:space-between;margin-bottom:.35rem}.ticket-reply{grid-gap:.6rem;display:grid;gap:.6rem}.ticket-reply textarea{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:.75rem .85rem;resize:vertical}.ticket-reply button{background:var(--text-primary);border:none;border-radius:10px;color:var(--bg-primary);cursor:pointer;font-weight:600;justify-self:flex-end;padding:.45rem .85rem}@media (max-width:768px){.tickets-page{padding:1.25rem}.ticket-card,.tickets-header{align-items:flex-start;flex-direction:column}.ticket-detail{padding:1.1rem}}.calendar-page{margin:0 auto;max-width:1200px;padding:2rem}.calendar-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.calendar-controls{display:flex;gap:.5rem}.calendar-controls button{align-items:center;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-primary);cursor:pointer;gap:.35rem;padding:.4rem .7rem}.calendar-controls button,.calendar-view-tabs{background:var(--bg-primary);display:inline-flex}.calendar-view-tabs{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:999px;gap:.5rem;margin-bottom:1.5rem;padding:.35rem}.calendar-view-tabs button{background:#0000;border:none;border-radius:999px;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.35rem .75rem}.calendar-view-tabs button.active{background:var(--text-primary);color:var(--bg-primary)}.calendar-state{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:var(--text-secondary);padding:2rem;text-align:center}.calendar-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr)}.calendar-grid-header{color:var(--text-secondary);font-weight:600;text-align:center}.calendar-cell{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;display:flex;flex-direction:column;gap:.35rem;min-height:110px;padding:.5rem}.calendar-cell.muted{opacity:.5}.calendar-cell-date{font-size:.9rem;font-weight:600}.calendar-cell-items{grid-gap:.25rem;display:grid;font-size:.75rem;gap:.25rem}.calendar-item{background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;display:flex;gap:1rem;justify-content:space-between;padding:.5rem .75rem}.calendar-list{grid-gap:.75rem;display:grid;gap:.75rem}.calendar-day{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:.75rem}.calendar-day-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.calendar-day-items{grid-gap:.5rem;display:grid;gap:.5rem}.calendar-more{font-size:.75rem}.calendar-empty,.calendar-more{color:var(--text-secondary)}.calendar-tasks{background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;margin-top:2rem;padding:1rem 1.25rem}.calendar-task-list{grid-gap:.5rem;display:grid;gap:.5rem}.calendar-task{background:var(--bg-secondary);border-radius:10px;display:flex;justify-content:space-between;padding:.5rem .75rem}@media (max-width:768px){.calendar-page{padding:1.25rem}.calendar-header{align-items:flex-start;flex-direction:column}.calendar-grid{grid-template-columns:repeat(2,1fr)}}.signature-page{margin:0 auto;max-width:1280px;padding:24px}.signature-loading{color:#666;color:var(--text-secondary,#666);padding:40px;text-align:center}.signature-header{align-items:center;display:flex;gap:16px;margin-bottom:20px}.signature-header h1{font-size:28px;margin:0}.signature-back{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;color:#222;color:var(--text-primary,#222);cursor:pointer;display:inline-flex;gap:8px;padding:8px 12px}.signature-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:380px 1fr}.signature-form-card,.signature-preview-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e5e5;border:1px solid var(--border-color,#e5e5e5);border-radius:14px;padding:16px}.signature-form-card h2,.signature-preview-card h2{font-size:18px;margin-bottom:12px;margin-top:0}.signature-form-card label{color:#666;color:var(--text-secondary,#666);display:block;font-size:13px;margin-bottom:10px}.signature-form-card input{background:#fafafa;background:var(--bg-secondary,#fafafa);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;box-sizing:border-box;color:#111;color:var(--text-primary,#111);height:40px;margin-top:6px;padding:0 12px;width:100%}.signature-form-card input::placeholder{color:#777;color:var(--text-secondary,#777);opacity:1}.signature-form-card input:focus{border-color:#ffc400;border-color:var(--accent-color,#ffc400);box-shadow:0 0 0 2px #ffc4002e;outline:none}[data-theme=dark] .signature-form-card input{background:#25211b;background:var(--bg-primary,#25211b);border-color:#68634a;border-color:var(--border-color,#68634a);color:#ecf0f1;color:var(--text-primary,#ecf0f1)}[data-theme=dark] .signature-form-card input::placeholder{color:#c7c3bd;color:var(--text-secondary,#c7c3bd)}[data-theme=dark] .signature-form-card input:-webkit-autofill,[data-theme=dark] .signature-form-card input:-webkit-autofill:focus,[data-theme=dark] .signature-form-card input:-webkit-autofill:hover{-webkit-text-fill-color:#ecf0f1;-webkit-text-fill-color:var(--text-primary,#ecf0f1);-webkit-box-shadow:inset 0 0 0 1000px #25211b;-webkit-box-shadow:0 0 0 1000px var(--bg-primary,#25211b) inset;-webkit-transition:background-color 9999s ease-out 0s;transition:background-color 9999s ease-out 0s}.signature-actions{display:flex;gap:10px;margin-top:14px}.signature-actions button{align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:inline-flex;flex:1 1;font-weight:600;gap:8px;justify-content:center;padding:10px 12px}.signature-actions .primary{background:#1d1d1c;color:#fff}.signature-actions .secondary{background:#f2f2f2;border-color:#ddd;color:#1d1d1c}.signature-help{color:#888;color:var(--text-muted,#888);font-size:12px;margin:10px 0 0}.signature-preview{background:#fff;border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;min-height:760px;width:100%}@media (max-width:1024px){.signature-grid{grid-template-columns:1fr}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}