*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{background:linear-gradient(135deg,#1e3a5f,#2c5282);min-height:100vh;padding:2rem}.login-background,.login-container{align-items:center;display:flex;justify-content:center}.login-background{max-width:1200px;width:100%}.login-content{display:flex;flex-direction:column;gap:2rem;max-width:450px;width:100%}.logo-section{color:#fff;text-align:center}.logo{font-size:2.5rem;text-shadow:0 2px 4px #0003}.logo,.tagline{margin-bottom:.5rem}.tagline{font-size:1.2rem;font-weight:500;opacity:.95}.subtitle{font-size:.9rem;font-weight:300;opacity:.85}.login-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:2.5rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-header h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin-bottom:.5rem}.login-header p{color:#718096;font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group input{background-color:#fff;border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:1rem;padding:.875rem;transition:all .2s}.form-group input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.form-group input::placeholder{color:#a0aec0}.btn-primary{font-weight:600;margin-top:.5rem;padding:.875rem 1.5rem}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #3182ce66}.btn-primary:active:not(:disabled){transform:translateY(0)}.login-footer{margin-top:1.5rem;text-align:center}.toggle-mode{background:none;border:none;color:#3182ce;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem;transition:color .2s}.toggle-mode:hover{color:#2c5282;text-decoration:underline}.footer-info{color:#fff;font-size:.85rem;opacity:.9;text-align:center}.footer-info p{margin:.25rem 0}@media (max-width:768px){.login-container{padding:1rem}.login-card{padding:2rem 1.5rem}.logo{font-size:2rem}.tagline{font-size:1rem}}.dashboard-container{min-height:100vh}.dashboard-main{margin:0 auto;max-width:1200px;padding:3rem 2rem}.welcome-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2.5rem}.welcome-section h2{color:#2d3748;font-size:2rem;font-weight:600;margin-bottom:.5rem}.welcome-section p{color:#718096;font-size:1rem;margin-bottom:.5rem}.user-name{color:#3182ce;font-size:1.1rem;font-weight:500;margin-top:.5rem}.info-card{margin-top:0}.info-card h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.info-row{border-bottom:1px solid #e2e8f0;display:flex;padding:1.25rem 1rem}.info-row:last-child{border-bottom:none}.info-label{color:#4a5568;min-width:120px}.info-value{word-break:break-all}@media (max-width:768px){.dashboard-main{padding:2rem 1rem}.info-card,.welcome-section{padding:1.5rem}}.quick-actions{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.action-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:inherit;display:flex;flex-direction:column;padding:2.5rem;text-decoration:none;transition:all .2s}.action-card:hover{border-color:#3182ce;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.action-card h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.action-card p{color:#718096;flex:1 1;margin-bottom:1rem}.action-arrow{color:#3182ce;font-size:1.5rem;font-weight:600}.excel-spreadsheet-container{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:calc(100vh - 200px);padding:1.5rem}.spreadsheet-header{align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.spreadsheet-header,.spreadsheet-tabs{border-bottom:2px solid #e2e8f0;display:flex}.spreadsheet-tabs{gap:.5rem;margin-bottom:1.5rem}.tab-button{font-size:.95rem;padding:.75rem 1.5rem}.tab-button:hover{background-color:#f7fafc}.tab-button.active{font-weight:600}.header-left{align-items:center;display:flex;gap:1rem}.spreadsheet-header h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.file-name{background:#f7fafc;border-radius:4px;color:#718096;font-size:.9rem;padding:.25rem .75rem}.btn-upload-excel{background-color:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.btn-upload-excel:hover:not(:disabled){background-color:#2c5282}.btn-upload-excel:disabled{cursor:not-allowed;opacity:.6}.spreadsheet-controls{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.search-box{flex:1 1;max-width:400px;position:relative}.search-input{border:1px solid #e2e8f0;border-radius:6px;transition:border-color .2s}.btn-clear-search{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);transition:all .2s;width:24px}.btn-clear-search:hover{background:#f7fafc;color:#2d3748}.spreadsheet-info{color:#718096;font-size:.9rem;white-space:nowrap}.search-indicator{color:#3182ce;font-weight:500}.spreadsheet-grid{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;min-height:400px;overflow:auto}.btn-create-from-row{background-color:#48bb78;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.4rem .8rem;transition:background-color .2s}.btn-create-from-row:hover{background-color:#38a169}.empty-state{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:4rem 2rem}.excel-table{background:#fff;border-collapse:collapse;width:100%}.excel-table thead{background-color:#f7fafc;position:-webkit-sticky;position:sticky;top:0;z-index:10}.excel-table th{border-bottom:2px solid #e2e8f0;border-right:1px solid #e2e8f0;color:#2d3748;font-size:.9rem;font-weight:600;padding:.75rem;text-align:left;-webkit-user-select:none;user-select:none}.excel-table th.sortable{cursor:pointer}.excel-table th.sortable:hover{background-color:#edf2f7}.excel-table th .header-content{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.excel-table th .sort-indicator{color:#718096;font-size:.85rem}.excel-table td{border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;color:#4a5568;font-size:.9rem;padding:.75rem}.excel-table tbody tr:hover{background-color:#f7fafc}.excel-table tbody tr:nth-child(2n){background-color:#fafafa}.excel-table tbody tr:nth-child(2n):hover{background-color:#f0f0f0}.pagination-controls{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding:1rem}.btn-pagination{background-color:#3182ce;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.btn-pagination:hover:not(:disabled){background-color:#2c5282}.btn-pagination:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#4a5568;font-size:.9rem;font-weight:500}.page-size-select{background:#fff;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.5rem}.page-size-select:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.pagination-indicator{color:#718096;font-size:.85rem;margin-left:.5rem}.clients-page{background-color:#f5f5f5;min-height:100vh;padding:2rem}.clients-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto 2rem;max-width:1400px}.clients-header h1{color:#2d3748;font-size:2rem;font-weight:600;margin:0}.header-actions-group{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.export-buttons{display:flex;gap:.5rem}.btn-export,.btn-import{background:#fff;border:1.5px solid #3182ce;border-radius:6px;color:#3182ce;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.65rem 1.25rem;transition:all .2s;white-space:nowrap}.btn-export:hover,.btn-import:hover:not(:disabled){background:#3182ce;box-shadow:0 2px 8px #3182ce4d;color:#fff;transform:translateY(-1px)}.btn-export:active,.btn-import:active:not(:disabled){transform:translateY(0)}.btn-import:disabled{cursor:not-allowed;opacity:.6}.import-status{animation:slideDown .3s ease;border-radius:8px;font-weight:500;margin:0 auto 1rem;max-width:1400px;padding:1rem 1.5rem}.import-status.success{background-color:#c6f6d5;border:1px solid #9ae6b4;color:#22543d}.import-status.error{background-color:#fed7d7;border:1px solid #fc8181;color:#c53030}.import-status.warning{background-color:#feebc8;border:1px solid #fbd38d;color:#7c2d12}.page-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:.5rem;margin:0 auto 1.5rem;max-width:1400px}.page-tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#718096;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1.5rem;transition:all .2s}.page-tabs button:hover{background:#f7fafc;color:#3182ce}.page-tabs button.active{border-bottom-color:#3182ce;color:#3182ce;font-weight:600}.filter-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin:0 auto 2rem;max-width:1400px;overflow:hidden}.filter-header{align-items:center;background-color:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;padding:1rem 1.5rem}.filter-toggle{background:none;border:none;color:#2d3748;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:600;padding:.5rem}.filter-toggle:hover{color:#3182ce}.btn-clear-filters{background-color:#fed7d7;border-radius:4px;color:#c53030;font-weight:500;padding:.4rem .8rem}.btn-clear-filters:hover{background-color:#fc8181;color:#fff}.result-count{color:#718096;font-size:.9rem;margin-left:auto}.filter-panel{padding:1.5rem}.filter-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1rem}.filter-group label{font-size:.85rem;margin-bottom:.5rem}.filter-input{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.6rem;transition:border-color .2s}.filter-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin:0 auto;max-width:1400px;overflow-x:auto}.clients-table{border-collapse:collapse;width:100%}.clients-table thead{background-color:#f7fafc}.clients-table th{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.clients-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:.9rem;padding:1rem}.clients-table tbody tr:hover{background-color:#f7fafc;cursor:pointer}.no-results{color:#718096;font-style:italic;padding:3rem;text-align:center}.actions{display:flex;gap:.5rem;white-space:nowrap}.btn-delete,.btn-edit,.btn-view{border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.4rem .8rem;transition:all .2s}.btn-view{background-color:#3182ce;color:#fff}.btn-view:hover{background-color:#2c5282}.modal-content{max-width:700px}.client-form{padding:1.5rem}.form-row{margin-bottom:1rem}@media (max-width:768px){.clients-page{padding:1rem}.clients-header{align-items:stretch;flex-direction:column;gap:1rem}.filter-row{grid-template-columns:1fr}.clients-table{font-size:.85rem}.clients-table td,.clients-table th{padding:.75rem .5rem}.actions{flex-direction:column}}.contacts-tab{padding:0}.contacts-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.contact-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s}.contact-card:hover{box-shadow:0 2px 8px #0000001a}.contact-card.main-contact{background:#f0f7ff;border:2px solid #3182ce}.contact-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.contact-info{flex:1 1}.contact-info h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.main-contact-badge{background:linear-gradient(135deg,#3182ce,#2c5282);border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;margin-left:.5rem;padding:.25rem .75rem}.contact-actions{display:flex;gap:.5rem}.btn-delete,.btn-edit{border:none;border-radius:6px;font-size:.85rem;font-weight:500}.btn-edit{background:#3182ce}.btn-edit:hover{background:#2c5282}.contact-details{display:flex;flex-direction:column;gap:.75rem}.detail-item{display:flex;gap:.5rem}.detail-label{color:#4a5568;min-width:100px}.contact-form{padding:1.5rem}.site-addresses-tab{padding:0}.addresses-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.address-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s}.address-card:hover{box-shadow:0 2px 8px #0000001a}.address-card.primary-address{background:#f0f7ff;border:2px solid #3182ce}.address-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.address-info{flex:1 1}.address-info h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.primary-badge{background:linear-gradient(135deg,#3182ce,#2c5282);color:#fff;font-size:.75rem;font-weight:600;margin-left:.5rem}.address-actions{display:flex;gap:.5rem}.address-details{display:flex;flex-direction:column;gap:.75rem}.address-text{color:#2d3748;font-family:inherit;font-size:.9rem;line-height:1.6;margin:0;white-space:pre-wrap}.address-notes{border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding-top:.75rem}.notes-label{color:#4a5568;font-weight:500;min-width:60px}.notes-value{color:#2d3748;flex:1 1}.section-header{margin-bottom:2rem}.address-form{padding:1.5rem}.form-row{grid-template-columns:repeat(3,1fr)}.btn-copy-address{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;margin-bottom:.5rem;padding:.75rem 1.5rem;transition:all .2s;width:100%}.btn-copy-address:hover{background:linear-gradient(135deg,#38a169,#2f855a);box-shadow:0 4px 12px #48bb784d;transform:translateY(-1px)}.contact-info-tab{padding:1rem 0}.btn-edit{background:linear-gradient(135deg,#3182ce,#2c5282);font-weight:500;transition:all .2s}.btn-edit:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.generate-invoice-tab{padding:1rem 0}.tab-header{flex-wrap:wrap;gap:1rem}.tab-header h2{margin:0}.header-actions{margin-left:auto}.auto-save-status{background:#f7fafc;border-radius:4px;color:#718096;font-size:.85rem;font-style:italic;padding:.25rem .75rem;transition:all .3s}.auto-save-status.saved{background:#c6f6d5;color:#22543d;font-weight:500}.invoice-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.invoice-items-section{margin:2rem 0}.section-header h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0}.btn-add-item{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.btn-add-item:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.items-table{overflow-x:auto}.items-table table{border-collapse:collapse;width:100%}.items-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem;text-align:left;text-transform:uppercase}.items-table td{border-bottom:1px solid #e2e8f0;padding:.75rem}.items-table input{background-color:#fff;border:1px solid #cbd5e0;border-radius:4px;cursor:text;font-family:inherit;font-size:.9rem;padding:.5rem;width:100%}.items-table input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.items-table input:disabled{background-color:#f7fafc;cursor:not-allowed;opacity:.6}.total-cell{color:#2d3748;font-weight:600}.btn-remove-item{background-color:#e53e3e;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.25rem .75rem}.btn-remove-item:hover{background-color:#c53030}.invoice-totals{background-color:#f7fafc;border-radius:8px;margin:2rem 0;padding:1.5rem}.totals-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.totals-row.total-row{border-top:2px solid #e2e8f0;font-size:1.25rem;font-weight:600;margin-top:1rem;padding-top:1rem}.tax-input-group{align-items:center;display:flex;gap:.5rem}.tax-input-group label{color:#4a5568;font-size:.9rem}.tax-input{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.5rem;width:100px}.tax-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.totals-label{color:#4a5568;font-size:1rem}.totals-value{color:#2d3748;font-size:1rem;font-weight:600}.invoice-number-input{background-color:#f7fafc;cursor:not-allowed}.invoice-number-input:disabled{opacity:.7}.loading-text{color:#718096;display:block;font-size:.75rem;font-style:italic;margin-top:.25rem}.form-actions{align-items:center;justify-content:space-between}.action-buttons-left{display:flex;gap:1rem}.type-select{background:#fff;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.5rem 1rem}.type-select:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.taxable-cell{text-align:center}.taxable-cell input[type=checkbox]{cursor:pointer;height:20px;width:20px}.invoice-history-tab{padding:1rem 0}.btn-action:disabled{cursor:not-allowed;opacity:.5}.btn-finalize{background-color:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-finalize:hover{background-color:#38a169}.btn-edit{background-color:#805ad5;font-size:.85rem}.btn-edit:hover{background-color:#6b46c1}.btn-finalize-draft{background-color:#ed8936;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-finalize-draft:hover{background-color:#dd6b20}.edit-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.edit-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.edit-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.edit-modal-header>div{display:flex;flex-direction:column;gap:.5rem}.edit-modal-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.edit-modal-header .auto-save-status{background:#f7fafc;border-radius:4px;color:#718096;font-size:.85rem;font-style:italic;padding:.25rem .75rem;transition:all .3s}.edit-modal-header .auto-save-status.saved{background:#c6f6d5;color:#22543d;font-weight:500}.edit-invoice-form{padding:2rem}.edit-invoice-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.edit-invoice-form .form-group{display:flex;flex-direction:column}.edit-invoice-form .form-group.full-width{grid-column:1/-1}.edit-invoice-form label{color:#2d3748;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-invoice-form input[type=date],.edit-invoice-form input[type=number],.edit-invoice-form input[type=text],.edit-invoice-form textarea{border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:.9rem;padding:.75rem;transition:border-color .2s}.edit-invoice-form input:focus,.edit-invoice-form textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.edit-invoice-form .invoice-items-section{margin:2rem 0}.edit-invoice-form .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.edit-invoice-form .section-header h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0}.edit-invoice-form .items-table{overflow-x:auto}.edit-invoice-form .items-table table{border-collapse:collapse;width:100%}.edit-invoice-form .items-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem;text-align:left;text-transform:uppercase}.edit-invoice-form .items-table td{border-bottom:1px solid #e2e8f0;padding:.5rem}.edit-invoice-form .items-table input{border:1px solid #cbd5e0;border-radius:4px;font-size:.9rem;padding:.5rem;width:100%}.edit-invoice-form .items-table input:focus{border-color:#3182ce;outline:none}.edit-invoice-form .taxable-cell{text-align:center}.edit-invoice-form .total-cell{color:#2d3748;font-weight:600}.edit-invoice-form .invoice-totals{align-items:flex-end;border-top:2px solid #e2e8f0;display:flex;flex-direction:column;gap:.5rem;margin-top:2rem;padding-top:1.5rem}.edit-invoice-form .totals-row{color:#4a5568;display:flex;font-size:.9rem;justify-content:space-between;width:300px}.edit-invoice-form .totals-row.total-row{border-top:1px solid #e2e8f0;color:#2d3748;font-size:1.1rem;font-weight:600;margin-top:.5rem;padding-top:.5rem}.edit-invoice-form .tax-input-group{align-items:center;display:flex;gap:.5rem}.edit-invoice-form .tax-input{width:80px}.edit-invoice-form .form-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.edit-invoice-form .btn-primary{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .2s}.edit-invoice-form .btn-primary:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.edit-invoice-form .btn-secondary{background:#e2e8f0;border:none;border-radius:6px;color:#2d3748;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .2s}.edit-invoice-form .btn-secondary:hover{background:#cbd5e0}.edit-invoice-form .btn-add-item{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.edit-invoice-form .btn-add-item:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.checkbox-label{font-weight:400}.checkbox-label input[type=checkbox]{height:1.25rem;width:1.25rem}.checkbox-label span{color:#4a5568;font-size:.9rem;line-height:1.5}.edit-invoice-form .btn-remove-item{background-color:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.edit-invoice-form .btn-remove-item:hover{background-color:#c53030}.quote-badge{background-color:#bee3f8;color:#2c5282;margin-left:.5rem}.btn-delete-invoice{background-color:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-delete-invoice:hover{background-color:#c53030}@media (max-width:768px){.invoice-header{flex-direction:column;gap:1rem}.invoice-actions{align-items:flex-start}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%}}.payment-info-tab{padding:1rem 0}.tab-header{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.header-actions,.tab-header{align-items:center}.btn-add-payment{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-add-payment:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.empty-state,.loading-state{padding:3rem}.payment-info-list{display:flex;flex-direction:column;gap:1.5rem}.payment-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.payment-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.payment-header h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0}.primary-badge{background-color:#c6f6d5;border-radius:12px;color:#22543d;display:inline-block;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.payment-details{display:flex;flex-direction:column;gap:1rem}.detail-row{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:.75rem 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#718096;font-size:.9rem;font-weight:500;min-width:150px}.detail-value{color:#2d3748;font-size:.95rem;font-weight:400;text-align:right;word-break:break-word}.btn-mask{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-mask:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.btn-mask.masked{background:linear-gradient(135deg,#48bb78,#38a169)}.info-note{background-color:#ebf8ff;border:1px solid #90cdf4;border-radius:8px;color:#2c5282;font-size:.9rem;line-height:1.6;margin-top:2rem;padding:1rem}.payment-form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group input,.form-group select{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.75rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.checkbox-group{margin-top:.5rem}@media (max-width:768px){.detail-row{align-items:flex-start;flex-direction:column;gap:.5rem}.detail-value{text-align:left}.tab-header{align-items:stretch;flex-direction:column;gap:1rem}.header-actions{flex-direction:column;gap:.5rem;width:100%}.form-row{grid-template-columns:1fr}.modal-overlay{padding:1rem}}.notes-tab{padding:1.5rem}.notes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.notes-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.btn-add-note{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-add-note:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s}.note-card:hover{box-shadow:0 4px 12px #0000001a}.note-card.important{background:#fffbeb;border-left:4px solid #f59e0b}.note-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.note-meta{display:flex;flex-direction:column;gap:.5rem}.note-date{color:#718096;font-size:.85rem}.important-badge{background-color:#f59e0b;border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.note-actions{display:flex;gap:.5rem}.btn-importance{background:none;border:none;cursor:pointer;font-size:1.25rem;opacity:.5;padding:.25rem;transition:all .2s}.btn-importance:hover{opacity:1;transform:scale(1.1)}.btn-importance.active{filter:drop-shadow(0 0 4px rgba(245,158,11,.5));opacity:1}.btn-delete,.btn-edit{background:none;border:1px solid #cbd5e0;border-radius:4px;color:#4a5568;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.btn-edit:hover{background-color:#edf2f7;border-color:#3182ce;color:#3182ce}.btn-delete:hover{background-color:#fed7d7;border-color:#e53e3e;color:#e53e3e}.note-content{color:#2d3748;line-height:1.6;white-space:pre-wrap}.note-content p{margin:.5rem 0}.note-form{padding:1.5rem}.note-textarea{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;min-height:150px;padding:.75rem;resize:vertical;width:100%}.note-textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.modal-content{max-width:600px}.btn-close{font-size:1.5rem}.form-actions{margin-top:1.5rem}.schedule-task-tab{padding:1.5rem}.tab-description{color:#718096;font-size:.95rem;margin:0}.task-form{max-width:800px}.form-group input,.form-group select,.form-group textarea{padding:.75rem 1rem}.form-group textarea{min-height:100px}.checkbox-label input[type=checkbox]{width:auto}.contact-info-display{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.contact-info-display input{width:100%}.address-display{background:#f7fafc;border:1px solid #cbd5e0;border-radius:4px;padding:.75rem}.address-display pre{color:#2d3748;font-family:inherit;font-size:.9rem;line-height:1.5;margin:0;white-space:pre-wrap}.no-address-message{background:#fffbf0;border:1px solid #fbd38d;border-radius:4px;padding:.75rem}.no-address-message p{color:#744210;font-size:.9rem;margin:0}.btn-primary:disabled{opacity:.6;transform:none}@media (max-width:768px){.form-row{grid-template-columns:1fr}}.order-form-tab{padding:1rem 0}.tab-header{margin-bottom:2rem}.tab-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.tab-subtitle{color:#718096;font-size:.9rem;margin:0}.error-message,.success-message{margin-bottom:1.5rem}.error-message{color:#742a2a}.order-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.mfi-form{max-width:900px}.company-header{border-bottom:2px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1.5rem}.company-info{text-align:center}.company-info h3{color:#2d3748;font-size:1.5rem;font-weight:700;letter-spacing:.5px;margin:0 0 .5rem}.company-info p{color:#4a5568;font-size:.95rem;margin:.25rem 0}.order-info-section{margin-bottom:2rem}.order-info-section .form-row{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.order-number-group{align-items:flex-end;display:flex;flex-direction:column}.order-number-input{background:#fff;border:2px solid #dc2626;border-radius:6px;color:#2d3748;font-size:1.5rem;font-weight:700;min-width:150px;padding:.5rem 1rem;text-align:center}.order-number-input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a;outline:none}.sales-associate-info{display:flex;justify-content:flex-end}.sales-associate-box{background:#f7fafc;border:1px solid #cbd5e0;border-radius:6px;min-width:200px;padding:.75rem 1rem;text-align:center}.sales-associate-box>div{color:#4a5568;font-size:.9rem;margin:.25rem 0}.order-date-label{color:#718096;font-size:.75rem;font-style:italic;margin-top:.5rem}.mfi-section{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.mfi-section h3{border-bottom:1px solid #cbd5e0;color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.75rem}.mfi-line-item,.mfi-line-items{display:flex;flex-direction:column;gap:1rem}.comments-section{margin-bottom:2rem}.form-group.full-width{width:100%}.form-group input,.form-group select,.form-group textarea{background:#fff;border-radius:6px}.readonly-display{align-items:center;background-color:#f7fafc;border:1px solid #cbd5e0;border-radius:6px;color:#2d3748;display:flex;font-size:.9rem;min-height:1.5rem;padding:.75rem}.btn-primary{padding:.75rem 2rem}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.unpaid-invoices-banner{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#e53e3e,#c53030);border-radius:8px;box-shadow:0 4px 12px #e53e3e4d;color:#fff;margin-bottom:2rem;padding:1rem 2rem}@media (max-width:768px){.unpaid-invoices-banner{padding:1rem}.banner-content{align-items:flex-start;flex-direction:column;gap:.75rem}.banner-link{text-align:center;width:100%}}.open-quotes-banner{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#f6ad55,#ed8936);border-radius:8px;box-shadow:0 4px 12px #f6ad554d;color:#fff;margin-bottom:2rem;padding:1rem 2rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.banner-content{align-items:center;display:flex;gap:1rem;margin:0 auto;max-width:1200px}.banner-icon{flex-shrink:0;font-size:1.5rem}.banner-text{flex:1 1;font-size:1rem;font-weight:500}.banner-link{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;padding:.5rem 1.5rem;transition:all .2s;white-space:nowrap}.banner-link:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}@media (max-width:768px){.open-quotes-banner{padding:1rem}.banner-content{align-items:flex-start;flex-direction:column;gap:.75rem}.banner-link{text-align:center;width:100%}}.important-notes-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.important-notes-popup{animation:slideUp .3s ease-out;background:#fff;border:2px solid #f59e0b;border-radius:12px;box-shadow:0 20px 25px -5px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.popup-header{align-items:flex-start;background:linear-gradient(135deg,#fffbeb,#fef3c7);border-bottom:2px solid #f59e0b;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:1.5rem}.popup-title-section h2{color:#92400e;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.popup-subtitle{color:#78350f;font-size:.9rem;font-weight:500;margin:0}.btn-close-popup{align-items:center;background:none;border:none;border-radius:50%;color:#92400e;cursor:pointer;display:flex;font-size:2rem;height:36px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:36px}.btn-close-popup:hover{background-color:#92400e1a;transform:rotate(90deg)}.popup-content{flex:1 1;overflow-y:auto;padding:1.5rem}.important-notes-list{display:flex;flex-direction:column;gap:1.5rem}.important-note-item{background:#fffbeb;border-left:4px solid #f59e0b;border-radius:6px;padding:1rem}.note-date{color:#92400e;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.note-text{color:#78350f;line-height:1.6;white-space:pre-wrap}.note-text p{margin:.5rem 0}.popup-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:1rem 1.5rem}.btn-acknowledge{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;box-shadow:0 2px 4px #f59e0b4d;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s}.btn-acknowledge:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.btn-acknowledge:active{transform:translateY(0)}.client-profile{background-color:#f5f5f5;min-height:100vh;padding:2rem}.profile-header{align-items:center;display:flex;justify-content:space-between;margin:0 auto 2rem;max-width:1200px}.btn-back{background:none;border:none;color:#3182ce;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.5rem 1rem}.btn-back:hover{text-decoration:underline}.header-actions{gap:1rem}.btn-delete-profile,.btn-edit-profile{border:none;border-radius:6px;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-edit-profile{background:linear-gradient(135deg,#3182ce,#2c5282);color:#fff}.btn-edit-profile:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.btn-delete-profile{background-color:#e53e3e;color:#fff}.btn-delete-profile:hover{background-color:#c53030}.profile-content{margin:0 auto;max-width:1200px}.client-name-header{margin-bottom:2rem}.client-name-header h1{color:#2d3748;font-size:2rem;font-weight:600;margin:0}.tabs-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.tabs-nav{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;display:flex}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#718096;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:1rem 2rem;transition:all .2s}.tab-button:hover{background-color:#edf2f7;color:#2d3748}.tab-button.active{background-color:#fff;border-bottom-color:#3182ce;color:#3182ce}.tab-content{padding:2rem}.profile-info{display:flex;flex-direction:column;gap:2rem}.info-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.info-card h1{font-size:2rem}.info-card h1,.info-card h2{color:#2d3748;font-weight:600;margin-bottom:1.5rem}.info-card h2{font-size:1.5rem}.info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-label{color:#718096;font-size:.85rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.info-value{color:#2d3748;font-size:1rem;font-weight:400}.info-value em{color:#a0aec0;font-style:italic}.notes-content{color:#4a5568;line-height:1.6;white-space:pre-wrap}.profile-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.form-section h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:2rem}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:.85rem}.form-group input,.form-group textarea{border-radius:4px;font-size:.9rem;transition:border-color .2s}.form-actions{padding-top:2rem}.btn-secondary{background-color:#e2e8f0}.btn-secondary:hover{background-color:#cbd5e0}.error-message{color:#e53e3e;font-size:1.1rem;padding:3rem;text-align:center}.loading-container{background-color:#f5f5f5}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#3182ce}@media (max-width:768px){.client-profile{padding:1rem}.profile-header{align-items:stretch;gap:1rem}.header-actions,.profile-header{flex-direction:column}.form-row,.info-grid{grid-template-columns:1fr}}.client-task-history{padding:0}.client-task-history .task-history-header{margin-bottom:2rem}.client-task-history .task-history-header h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.client-task-history .section-description{color:#718096;font-size:.95rem;margin:0}.client-task-history .task-history-list{margin-top:1.5rem}.client-task-history .task-history-table{border-collapse:collapse;font-size:.9rem;width:100%}.client-task-history .task-history-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;text-align:left}.client-task-history .task-history-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;padding:1rem;vertical-align:top}.client-task-history .task-history-row:hover{background-color:#f7fafc}.client-task-history .task-history-row.status-completed{opacity:.9}.client-task-history .task-time-small{color:#718096;font-size:.8rem;margin-top:.25rem}.client-task-history .task-title-cell{display:flex;flex-direction:column;gap:.5rem}.client-task-history .task-description-small{color:#718096;font-size:.85rem;font-style:italic}.client-task-history .completion-note-preview{background:#f0fdf4;border-radius:6px;color:#065f46;font-size:.85rem;margin-top:.5rem;padding:.75rem}.client-task-history .completion-note-preview div{margin-bottom:.25rem}.client-task-history .completion-note-preview div:last-child{margin-bottom:0}.client-task-history .status-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize}.client-task-history .status-badge.status-scheduled{background:#dbeafe;color:#1e40af}.client-task-history .status-badge.status-arrived{background:#fef3c7;color:#92400e}.client-task-history .status-badge.status-started{background:#dbeafe;color:#1e3a8a}.client-task-history .status-badge.status-completed{background:#d1fae5;color:#065f46}.client-task-history .assigned-user{color:#4a5568;font-weight:500}.client-task-history .unassigned{color:#a0aec0;font-style:italic}.client-task-history .btn-view-task{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.client-task-history .btn-view-task:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.client-task-history .empty-state{color:#718096;padding:3rem 1rem;text-align:center}.client-task-history .loading-state{color:#718096;padding:3rem;text-align:center}.unpaid-invoices-page{margin:0 auto;max-width:1400px;padding:2rem}.filters-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.filters-header h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0}.btn-clear-filters{background-color:#e2e8f0;border:none;border-radius:6px;color:#2d3748;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-clear-filters:hover{background-color:#cbd5e0}.filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#4a5568;font-size:.9rem;font-weight:500}.filter-group input,.filter-group select{border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:.9rem;padding:.5rem}.filter-group input:focus,.filter-group select:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.deposit-badge{background-color:#c6f6d5;border-radius:12px;color:#22543d;display:inline-block;font-size:.75rem;font-weight:500;margin-left:.5rem;padding:.25rem .75rem}.deposit-checkbox-label,.hide-totals-checkbox-label{align-items:center;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;-webkit-user-select:none;user-select:none}.deposit-checkbox-label:hover{background-color:#edf2f7}.deposit-checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}@media (max-width:768px){.filters-grid{grid-template-columns:1fr}}.stat-badge{background:linear-gradient(135deg,#3182ce,#2c5282)}.invoices-list{display:flex;flex-direction:column;gap:1.5rem}.invoice-card{background:#fff;border-left:4px solid #e53e3e;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.invoice-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.invoice-info h3{align-items:center;color:#2d3748;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin-bottom:.5rem}.overdue-badge{background-color:#fed7d7;border-radius:12px;color:#c53030;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.invoice-meta{color:#718096;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem}.overdue-date{color:#c53030;font-weight:600}.invoice-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.btn-mark-paid{background-color:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:600;padding:.5rem 1rem}.btn-mark-paid:hover{background-color:#38a169}.invoice-total{color:#2d3748;font-size:1.5rem;font-weight:600}.invoice-items{margin:1.5rem 0;overflow-x:auto}.invoice-items table{border-collapse:collapse;width:100%}.invoice-items th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem;text-align:left;text-transform:uppercase}.invoice-items td{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:.9rem;padding:.75rem}.invoice-summary{align-items:flex-end;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem}.invoice-notes{background-color:#f7fafc;border-radius:6px;color:#4a5568;font-size:.9rem;line-height:1.6;margin-top:1rem;padding:1rem}@media (max-width:768px){.unpaid-invoices-page{padding:1rem}.page-header{align-items:flex-start}.invoice-header,.page-header{flex-direction:column;gap:1rem}.invoice-actions{align-items:flex-start;width:100%}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%}}.open-quotes-page{margin:0 auto;max-width:1400px;padding:2rem}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.page-header h1{font-size:2rem}.header-stats{display:flex;gap:1rem}.stat-badge{background:linear-gradient(135deg,#f6ad55,#ed8936);border-radius:20px;color:#fff;font-size:1rem;font-weight:600;padding:.5rem 1.5rem}.empty-state,.loading-state{color:#718096;padding:4rem 2rem;text-align:center}.empty-state p{font-size:1.25rem;margin:.5rem 0}.empty-subtitle{color:#a0aec0;font-size:1rem}.quotes-list{display:flex;flex-direction:column;gap:1.5rem}.quote-card{background:#fff;border-left:4px solid #f6ad55;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.quote-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.quote-info h3{align-items:center;color:#2d3748;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin-bottom:.5rem}.quote-badge{background-color:#feebc8;color:#7c2d12}.creator-badge,.quote-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.creator-badge{background-color:#e6fffa;color:#234e52}.quote-meta{color:#718096;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem}.client-link{color:#3182ce;cursor:pointer;font-weight:500;text-decoration:underline}.client-link:hover{color:#2c5282}.status-badge.draft{background-color:#feebc8;color:#7c2d12}.status-badge.sent{background-color:#bee3f8;color:#2c5282}.status-badge.paid{background-color:#c6f6d5;color:#22543d}.status-badge.overdue{background-color:#fed7d7;color:#c53030}.quote-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.action-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.btn-action{background-color:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-action:hover:not(:disabled){background-color:#2c5282}.btn-view-client{background-color:#805ad5;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.5rem 1rem}.btn-view-client:hover{background-color:#6b46c1}.hide-totals-checkbox-label{align-items:center;background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;-webkit-user-select:none;user-select:none}.hide-totals-checkbox-label:hover{background-color:#edf2f7}.hide-totals-checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.quote-total{color:#2d3748;font-size:1.5rem;font-weight:600}.quote-items{margin:1.5rem 0;overflow-x:auto}.quote-items table{border-collapse:collapse;width:100%}.quote-items th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem;text-align:left;text-transform:uppercase}.quote-items td{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:.9rem;padding:.75rem}.quote-summary{align-items:flex-end;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem}.summary-row{color:#4a5568;display:flex;font-size:.9rem;justify-content:space-between;width:200px}.summary-row.total{border-top:1px solid #e2e8f0;color:#2d3748;font-size:1.1rem;font-weight:600;margin-top:.5rem;padding-top:.5rem}.quote-notes{background-color:#f7fafc;border-radius:6px;color:#4a5568;font-size:.9rem;line-height:1.6;margin-top:1rem;padding:1rem}@media print{body *{visibility:hidden}.print-view,.print-view *{visibility:visible}.print-view{background:#fff;left:0;padding:2rem;position:absolute;top:0;width:100%}.no-print{display:none!important}}.print-view{background:#fff;font-family:Arial,sans-serif;margin:0 auto;max-width:800px;padding:2rem}.print-header{border-bottom:2px solid #2d3748;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.print-header h1{color:#2d3748;font-size:2rem;margin:0}.print-header p{color:#718096;margin:.5rem 0 0}.print-document-type{margin:2rem 0;text-align:center}.print-document-type h2{color:#2d3748;font-size:1.5rem;margin:0}.print-info-section{display:flex;justify-content:space-between;margin-bottom:2rem}.print-client-info h3{color:#2d3748;font-size:1rem;margin-bottom:.5rem}.print-client-info p{color:#4a5568;margin:.25rem 0}.print-document-info p{color:#4a5568;margin:.5rem 0;text-align:right}.print-items-table{border-collapse:collapse;margin-bottom:2rem;width:100%}.print-items-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:.75rem;text-align:left}.print-items-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;padding:.75rem}.print-totals{border-top:2px solid #e2e8f0;margin-top:2rem;padding-top:1rem}.print-totals-row{display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem 0}.print-totals-row.print-total{border-top:2px solid #e2e8f0;font-size:1.25rem;font-weight:600;margin-top:1rem;padding-top:1rem}.print-notes{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1rem}.print-notes h3{color:#2d3748;font-size:1rem;margin-bottom:.5rem}.print-notes p{color:#4a5568;line-height:1.6;white-space:pre-wrap}@media (max-width:768px){.open-quotes-page{padding:1rem}.page-header{align-items:flex-start}.page-header,.quote-header{flex-direction:column;gap:1rem}.quote-actions{align-items:flex-start;width:100%}.action-buttons{flex-direction:column;width:100%}.action-buttons button{width:100%}}.letter-editor-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden}.letter-editor-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 30px}.letter-editor-title h2{font-size:24px;font-weight:600;margin:0}.letter-editor-form{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:20px 30px}.letter-editor-form .form-group{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:80px 1fr}.letter-editor-form label{color:#495057;font-size:14px;font-weight:500}.letter-editor-form .form-input{border:1px solid #dee2e6;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 14px;transition:all .2s ease}.letter-editor-form .form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.letter-editor-toolbar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px}.toolbar-group{display:flex;gap:4px}.toolbar-separator{background:#dee2e6;height:24px;margin:0 4px;width:1px}.toolbar-btn{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;display:flex;font-family:inherit;font-size:14px;height:36px;justify-content:center;min-width:36px;padding:6px 12px;transition:all .2s ease}.toolbar-btn:hover{background:#e9ecef;border-color:#adb5bd}.toolbar-btn:active{background:#dee2e6}.toolbar-btn.active{background:#667eea;border-color:#667eea;color:#fff}.toolbar-btn:disabled{cursor:not-allowed;opacity:.5}.variable-group{margin-left:auto}.variable-select{background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-family:inherit;font-size:14px;min-width:200px;padding:6px 12px}.variable-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.variable-insert-btn{margin-left:8px}.letter-editor-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.editor-wrapper{background:#fff;flex:1 1;overflow-y:auto;padding:30px}.editor-body{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#212529;direction:ltr;font-size:16px;line-height:1.6;min-height:100%;outline:none;padding:20px;text-align:left;transition:border-color .2s ease}.editor-body:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.editor-body[contenteditable=true]:empty:before{color:#adb5bd;content:attr(data-placeholder);font-style:italic}.editor-body h1{color:#212529;font-size:32px;margin-bottom:16px}.editor-body h2{color:#212529;font-size:24px}.editor-body h2,.editor-body p{margin-bottom:12px}.editor-body ol,.editor-body ul{margin-bottom:12px;margin-left:24px}.editor-body li{margin-bottom:6px}.editor-body table{border:1px solid #ddd;border-collapse:collapse;margin:10px 0;width:100%}.editor-body table.no-borders{border:none}.editor-body table td,.editor-body table th{border:1px solid #ddd;min-width:100px;padding:8px;position:relative}.editor-body table.no-borders td,.editor-body table.no-borders th{border:none}.cell-resize-handle{background:#0000;position:absolute;transition:background .2s ease;z-index:10}.cell-resize-handle-right{cursor:col-resize;height:100%;right:-4px;top:0;width:8px}.cell-resize-handle-bottom{bottom:-4px;cursor:row-resize;height:8px;left:0;width:100%}.cell-resize-handle-corner{background:#667eea;border-radius:2px;bottom:-4px;cursor:nwse-resize;height:12px;opacity:0;right:-4px;transition:opacity .2s ease;width:12px}.cell-resize-handle:hover,.editor-body table td:hover .cell-resize-handle-corner,.editor-body table th:hover .cell-resize-handle-corner{background:#667eea4d}.editor-body table td:hover .cell-resize-handle-corner,.editor-body table th:hover .cell-resize-handle-corner{opacity:1}.cell-resize-handle-bottom:hover,.cell-resize-handle-right:hover{background:#667eea4d}.color-picker-popup{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:8px;min-width:240px;padding:12px;position:absolute;top:100%;z-index:1000}.color-picker-grid{flex-direction:column;margin-bottom:12px}.color-picker-grid,.color-picker-row{display:flex;gap:4px}.color-picker-swatch{border:1px solid #dee2e6;border-radius:4px;cursor:pointer;flex-shrink:0;height:32px;padding:0;transition:all .2s ease;width:32px}.color-picker-swatch:hover{box-shadow:0 2px 8px #0003;position:relative;transform:scale(1.1);z-index:1}.color-picker-custom{align-items:center;border-top:1px solid #e9ecef;display:flex;gap:8px;padding-top:8px}.color-picker-custom input[type=color]{border:1px solid #dee2e6;border-radius:4px;cursor:pointer;height:40px;padding:0;width:40px}.color-picker-custom span{color:#495057;font-size:12px}.size-picker-popup{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:8px;max-height:300px;min-width:120px;overflow-y:auto;padding:8px;position:absolute;top:100%;z-index:1000}.size-picker-option{align-items:center;background:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:8px 12px;text-align:left;transition:background .2s ease;width:100%}.size-picker-option:hover{background:#f8f9fa}.size-picker-option span:first-child{display:inline-block;min-width:30px}.size-picker-option span:last-child{color:#6c757d;font-size:12px}.editor-body table th{background-color:#f2f2f2;font-weight:700;text-align:left}.letter-editor-footer{align-items:center;background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;padding:16px 30px}.footer-actions{display:flex;gap:10px}.action-btn{border:none;border-radius:6px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-btn.primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.action-btn.secondary{background:#fff;border:1px solid #dee2e6;color:#495057}.action-btn.secondary:hover{background:#e9ecef;border-color:#adb5bd}.word-count{color:#6c757d;font-size:14px}@media (max-width:768px){.letter-editor-header{padding:15px 20px}.letter-editor-title h2{font-size:20px}.letter-editor-toolbar{padding:10px}.toolbar-btn{font-size:12px;height:32px;min-width:32px;padding:6px 8px}.variable-select{font-size:12px;min-width:150px}.editor-wrapper{padding:15px}.letter-editor-footer{align-items:stretch;flex-direction:column;gap:15px}.footer-actions{flex-wrap:wrap}.action-btn{flex:1 1;min-width:80px}}.settings-page{background-color:#f5f5f5;min-height:100vh;padding:2rem}.settings-header{align-items:center;display:flex;justify-content:space-between;margin:0 auto 2rem;max-width:1200px}.settings-header h1{color:#2d3748;font-size:2rem;font-weight:600}.settings-content{margin:0 auto;max-width:1200px}.settings-tabs{border-bottom:1px solid #e2e8f0;display:flex;gap:.5rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:1200px}.settings-tab{background:none;border:none;border-bottom:2px solid #0000;color:#718096;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease-in-out}.settings-tab:hover{border-color:#a0aec0;color:#2d3748}.settings-tab.active{border-color:#3182ce;color:#3182ce;font-weight:600}.settings-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.section-description{margin-bottom:2rem}.template-sub-tabs{border-bottom:1px solid #e2e8f0;display:flex;gap:.5rem;margin-bottom:2rem}.template-sub-tab{background:none;border:none;border-bottom:2px solid #0000;color:#718096;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease-in-out}.template-sub-tab:hover{border-color:#a0aec0;color:#2d3748}.template-sub-tab.active{border-color:#3182ce;color:#3182ce}.templates-list{display:flex;flex-direction:column;gap:1.5rem}.template-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.template-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.template-header h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0}.template-actions{display:flex;gap:.5rem}.btn-view-template{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-view-template:hover{box-shadow:0 4px 12px #48bb784d;transform:translateY(-1px)}.btn-edit-template{background-color:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.5rem 1rem}.btn-edit-template:hover{background-color:#2c5282}.template-preview{gap:1rem}.preview-item,.template-preview{display:flex;flex-direction:column}.preview-item{gap:.5rem}.preview-item strong{color:#4a5568;font-size:.9rem}.preview-item p{color:#2d3748;font-size:.95rem;line-height:1.5;margin:0}.preview-body{background-color:#f7fafc;border-radius:4px;font-family:Courier New,monospace;font-size:.85rem;padding:.75rem;white-space:pre-wrap}.users-list{overflow-x:auto}.users-table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.users-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;text-align:left}.users-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;padding:1rem}.users-table tr:hover{background-color:#f7fafc}.role-badge{background-color:#edf2f7;border-radius:12px;color:#2d3748;display:inline-block;padding:.25rem .75rem}.role-badge,.status-badge{font-size:.85rem;font-weight:500}.status-badge.active{background-color:#c6f6d5;color:#22543d}.status-badge.pending{background-color:#feebc8;color:#7c2d12}.btn-edit{background-color:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.5rem 1rem}.btn-edit:hover{background-color:#38a169}.loading-state{padding:2rem}.empty-state{padding:3rem}.empty-state p{font-size:1rem;margin:0}.info-box{background:#ebf8ff;border:1px solid #90cdf4;border-radius:8px;margin-top:2rem;padding:1.5rem}.info-box h3{color:#2c5282;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.info-box p{color:#2c5282;font-size:.9rem;line-height:1.6;margin:0}.modal-overlay{background-color:#00000080}.modal-overlay:has(.modal-editor){background-color:initial;padding:0;pointer-events:none}.modal-overlay:has(.modal-editor) .modal-editor{pointer-events:auto}.modal-content{border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;overflow-y:auto}.modal-large{max-height:95vh;max-width:95vw;overflow-y:auto;width:95vw}.modal-editor{background:#fff;border-radius:12px;display:flex;flex-direction:column;height:95vh;max-height:95vh;max-width:1400px;overflow:hidden;padding:0;width:95vw}.modal-overlay.modal-overlay-editor{background-color:#0009;padding:1.5rem;pointer-events:auto}.modal-overlay.modal-overlay-editor .modal-editor{pointer-events:auto}.btn-close{height:2rem;width:2rem}.btn-secondary{background:#e2e8f0;border:none;color:#2d3748}.btn-secondary:hover{background:#cbd5e0}.error-message{background:#fed7d7;padding:1rem}.success-message{background:#c6f6d5;padding:1rem}.editor-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.editor-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.editor-header-actions{display:flex;gap:1rem}.editor-layout{background:#fff;display:flex;flex:1 1;min-height:0;overflow:hidden}.editor-sidebar{background:#f7fafc;border-right:1px solid #e2e8f0;flex-shrink:0;overflow-y:auto;padding:1.5rem;width:280px}.editor-sidebar .btn{border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:.5rem;padding:.75rem 1rem;text-align:center;transition:all .2s;width:100%}.editor-sidebar .btn-default{background:#e2e8f0;border:1px solid #cbd5e0;color:#2d3748}.editor-sidebar .btn-default:hover{background:#cbd5e0;border-color:#a0aec0}.page-header{background:#fff;border-bottom:1px solid #e2e8f0;padding:1.5rem 2rem}.page-header-tabs{align-items:center;display:flex;justify-content:space-between;width:100%}.page-header-actions{align-items:center;display:flex;gap:1.5rem}.page-header-buttons{align-items:center;display:flex;gap:.75rem}.page-header-buttons .btn{border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.5rem 1.25rem;transition:all .2s;white-space:nowrap}.page-header h1{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.nav-tabs{border-bottom:1px solid #e2e8f0;display:flex;list-style:none;margin:0;padding:0}.nav-tabs li{margin:0}.nav-tabs li a{border-bottom:2px solid #0000;color:#718096;display:block;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.nav-tabs li.active a{border-bottom-color:#3182ce;color:#3182ce;font-weight:600}.nav-tabs li a:hover{color:#2d3748}.fixed-bottom{background:#fff;border-top:1px solid #e2e8f0;bottom:0;box-shadow:0 -2px 8px #0000001a;clear:both;display:flex;gap:1rem;padding:1rem 2rem;position:fixed;right:0;z-index:10000}.pull-right{float:right}.pull-right.fixed-bottom{float:none}.corporate-settings-panel{border:none;box-shadow:none;margin:0}.corporate-settings-panel-height{display:flex;flex-direction:column;max-height:calc(95vh - 200px);min-height:calc(95vh - 200px);overflow-y:auto;padding:1.5rem}.corporate-settings-edit-label{color:#2d3748;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem;margin-top:1rem}.corporate-settings-edit-label:first-child{margin-top:0}.col-md-4{padding-right:1rem;width:33.333333%}.col-md-4,.col-md-8{box-sizing:border-box;float:left}.col-md-8{padding-left:1rem;width:66.666667%}.col-md-4:after,.col-md-8:after{clear:both;content:"";display:table}.corporate-settings-panel-height>div>div{display:flex;flex:1 1;flex-wrap:wrap;margin:0 -.5rem;min-height:0}.corporate-settings-panel-height>div>div>.col-md-4,.corporate-settings-panel-height>div>div>.col-md-8{display:flex;flex-direction:column;min-height:0}.corporate-settings-panel-height>div>div>.col-md-8{flex:1 1;min-width:0}.corporate-settings-panel-height>div>div>.col-md-4,.corporate-settings-panel-height>div>div>.col-md-8{padding-left:.5rem;padding-right:.5rem}.form-control{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.5rem;width:100%}.form-control:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.btn{border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-default{background:#e2e8f0;color:#2d3748}.btn-default:hover{background:#cbd5e0}.btn-link{background:none;color:#3182ce;padding:.5rem 1rem;text-decoration:none}.btn-link:hover{text-decoration:underline}.dropdown{position:relative}.dropdown-toggle{align-items:center;display:flex;justify-content:space-between;text-align:left;width:100%}.dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:4px;box-shadow:0 4px 12px #0000001a;left:0;list-style:none;margin:.5rem 0 0;max-height:300px;overflow-y:auto;padding:.5rem 0;position:absolute;right:0;top:100%;z-index:1000}.dropdown-menu li{padding:0}.dropdown-menu li label{cursor:pointer;display:block;font-weight:400;margin:0;padding:.5rem 1rem}.dropdown-menu li label:hover{background:#f7fafc}.dropdown-menu li input[type=checkbox]{margin-right:.5rem}.caret{border-left:4px solid #0000;border-right:4px solid #0000;border-top:4px solid;display:inline-block;height:0;margin-left:.5rem;vertical-align:middle;width:0}.selected-options{list-style:none;margin:.5rem 0 0;padding:0}.selected-options li{align-items:center;background:#e2e8f0;border-radius:4px;display:flex;font-size:.85rem;margin-bottom:.25rem;padding:.25rem .5rem}.red-x-button{color:#c53030;cursor:pointer;font-weight:700;margin-right:.5rem}.red-x-button:hover{color:#9b2c2c}.template-replacements{margin-top:1rem}.replacement-row{border-bottom:1px solid #e2e8f0;padding:.5rem}.search-row{margin-bottom:.5rem}.search-row input{border:1px solid #cbd5e0;border-radius:4px;font-size:.9rem;padding:.5rem;width:100%}.accordion{border:1px solid #e2e8f0;border-radius:4px;overflow:hidden}.accordion-item{cursor:pointer;-webkit-user-select:none;user-select:none}.accordion-item:hover{background:#f7fafc}.replacement-title{align-items:center;color:#2d3748;display:flex;font-weight:500}.icon-arrow-right{display:inline-block;font-size:.75rem;margin-right:.5rem;transition:transform .2s}.icon-arrow-right.rotated{transform:rotate(90deg)}.accordion-content{background:#fafafa;padding-left:1rem}.accordion-content .replacement-row{border-bottom:1px solid #e2e8f0;cursor:pointer;padding:.75rem}.accordion-content .replacement-row:hover{background:#f0f0f0}.accordion-content .replacement-row:last-child{border-bottom:none}.clearfix:after{clear:both;content:"";display:table}.panel{background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;margin-bottom:0}.panel-default{border-color:#e2e8f0}.panel-body{padding:1.5rem}.sidebar-section{margin-bottom:2rem}.sidebar-section label{color:#2d3748;display:block;font-size:.9rem;font-weight:600;margin-bottom:.75rem}.sidebar-section h3{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 1rem}.sidebar-value{color:#4a5568;font-size:.95rem;padding:.5rem 0}.btn-upload-sidebar{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;box-shadow:0 2px 6px #3182ce4d;color:#fff;cursor:pointer;display:block;font-size:.95rem;font-weight:700;letter-spacing:.5px;padding:.75rem 1rem;text-align:center;text-transform:uppercase;transition:all .2s;width:100%}.btn-upload-sidebar:hover{background:linear-gradient(135deg,#2c5282,#2a4365);box-shadow:0 4px 12px #3182ce80;transform:translateY(-2px)}.btn-reset-sidebar{background:#e2e8f0;border:none;border-radius:6px;color:#2d3748;cursor:pointer;display:block;font-family:inherit;font-size:.95rem;font-weight:600;padding:.75rem 1rem;text-align:center;transition:all .2s;width:100%}.btn-reset-sidebar:hover{background:#cbd5e0;transform:translateY(-1px)}.variable-dropdown{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#2d3748;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.75rem 1rem;transition:all .2s;width:100%}.variable-dropdown:hover{border-color:#3182ce}.variable-dropdown:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.variable-dropdown option{font-family:Courier New,monospace;padding:.5rem}.editor-main{background:#fff;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.editor-tabs{background:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;padding:0 2rem}.editor-tab{background:none;border:none;border-bottom:2px solid #0000;color:#718096;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:1rem 2rem;position:relative;top:1px;transition:all .2s}.editor-tab:hover{color:#2d3748}.editor-tab.active{border-bottom-color:#3182ce;color:#3182ce;font-weight:600}.template-form-editor{flex:1 1;gap:2.5rem;height:100%;min-width:0;overflow-y:auto;padding:2.5rem}.form-group-editor,.template-form-editor{display:flex;flex-direction:column;min-height:0}.form-group-editor{flex:1 1;gap:.75rem;margin-bottom:0}.form-group-editor label{flex-shrink:0}.form-group-editor>:not(label){display:flex;flex:1 1;flex-direction:column;min-height:0}.form-group-editor label{color:#2d3748;display:block;font-size:.95rem;font-weight:600;margin-bottom:.75rem}.editor-input{background:#fff;border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:1.05rem;padding:1.25rem 1.5rem;width:100%}.editor-input-subject{font-size:.95rem;max-width:100%;padding:.75rem 1rem}.editor-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.editor-textarea{word-wrap:normal;background:#fafafa;border:1px solid #cbd5e0;border-radius:6px;font-family:Courier New,monospace;font-size:1.05rem;line-height:1.8;min-height:400px;overflow-x:auto;padding:1.5rem;resize:vertical;white-space:pre;width:100%;word-break:normal}.editor-textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.editor-preview{height:100%;overflow-y:auto;padding:2rem}.editor-preview .preview-section{margin-bottom:2rem}.editor-preview .preview-section h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.editor-preview .preview-content{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;line-height:1.6;padding:1rem}.editor-preview .preview-body{font-family:Courier New,monospace;font-size:.9rem;white-space:pre-wrap}.template-form{padding:1.5rem}.form-group label{color:#2d3748;font-size:.95rem;font-weight:600}.form-group input,.form-group textarea{border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;width:100%}.form-group textarea{min-height:200px;resize:vertical}.form-group input:focus,.form-group textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.form-hint{color:#718096;display:block;font-size:.85rem;font-style:italic;margin-top:.5rem}.sources-table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.sources-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;text-align:left}.sources-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;padding:1rem}.btn-delete{background-color:#e53e3e;font-size:.9rem;margin-left:.5rem;padding:.5rem 1rem}.btn-delete:hover{background-color:#c53030}.audit-log-table,.clock-in-log-table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.audit-log-table th,.clock-in-log-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;text-align:left}.audit-log-table td,.clock-in-log-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:.9rem;padding:1rem}.audit-details{display:flex;flex-wrap:wrap;gap:.5rem}.detail-item{background:#edf2f7;border-radius:4px;font-size:.85rem;padding:.25rem .5rem}.text-muted{color:#a0aec0}.week-selector{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.week-selector select{background:#fff;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-family:inherit;font-size:1rem;padding:.75rem 1rem}.week-total{background:#f7fafc;border-radius:6px;color:#2d3748;font-size:1.1rem}.btn-print,.week-total{font-weight:600;padding:.75rem 1.5rem}.btn-print{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;box-shadow:0 2px 4px #48bb7833;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;transition:all .2s}.btn-print:hover{background:linear-gradient(135deg,#38a169,#2f855a);box-shadow:0 4px 12px #48bb7866;transform:translateY(-1px)}.template-preview-modal{padding:1.5rem}.template-preview-modal .form-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.preview-section{margin-bottom:2rem}.preview-section h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.preview-content{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;line-height:1.6;padding:1rem}.preview-footer,.preview-header{font-family:Courier New,monospace;font-size:.9rem;white-space:pre-wrap}@media (max-width:768px){.settings-page{padding:1rem}.settings-tabs{flex-wrap:wrap}.editor-layout{flex-direction:column;height:auto}.editor-sidebar{border-bottom:1px solid #e2e8f0;border-right:none;width:100%}.col-md-4,.col-md-8{float:none;padding-left:0;padding-right:0;width:100%}}.list-unstyled{list-style:none;margin:0;padding:0}.icon-remove{color:#c53030;cursor:pointer;display:inline-block;font-weight:700;margin-right:.5rem}.icon-remove:hover{color:#9b2c2c}.can-click{cursor:pointer}.accordion-item.expanded{background:#f7fafc}.calendar-page{background-color:#f5f5f5;min-height:100vh;padding:2rem;position:relative;transition:padding-right .3s ease}.calendar-page.task-list-open{padding-right:calc(2rem + 400px)}.calendar-header{display:flex;flex-direction:column;gap:1rem;margin:0 auto 2rem;max-width:1400px}.calendar-title-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.calendar-header h1{color:#2d3748;font-size:2rem;font-weight:600;margin:0}.calendar-view-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.5rem;padding:.25rem}.view-tab{background:#0000;border:none;border-radius:6px;color:#718096;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:500;padding:.5rem 1.5rem;transition:all .2s}.view-tab:hover{background:#f7fafc;color:#2d3748}.view-tab.active{background:linear-gradient(135deg,#3182ce,#2c5282);color:#fff}.calendar-controls{align-items:center;display:flex;gap:1rem}.btn-nav,.btn-today{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-nav:hover,.btn-today:hover{background-color:#f7fafc;border-color:#3182ce;color:#3182ce}.btn-today{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;color:#fff}.btn-today:hover{background:linear-gradient(135deg,#2c5282,#1e3a5f);color:#fff}.btn-task-list{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;margin-left:auto;padding:.5rem 1rem;transition:all .2s}.btn-task-list:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.month-year{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0}.calendar-grid{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin:0 auto;max-width:1400px;overflow:hidden}.calendar-weekdays{background:#f7fafc;border-bottom:2px solid #e2e8f0;display:grid;grid-template-columns:repeat(7,1fr)}.weekday-header{color:#4a5568;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:center;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{border:1px solid #e2e8f0;cursor:pointer;min-height:120px;padding:.5rem;position:relative;transition:background-color .2s}.calendar-day:hover:not(.empty){background-color:#f7fafc}.calendar-day.empty{background-color:#fafafa;cursor:default}.calendar-day.today{background-color:#ebf8ff}.calendar-day.today .day-number{align-items:center;background:linear-gradient(135deg,#3182ce,#2c5282);border-radius:50%;color:#fff;display:flex;font-weight:600;height:28px;justify-content:center;width:28px}.calendar-day.other-month{background-color:#fafafa;opacity:.5}.day-number{color:#2d3748;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.day-events{display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem}.event-dot{background:#48bb78;border-left:3px solid #38a169;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;transition:all .2s;white-space:nowrap}.event-dot:hover{background:#38a169;transform:translateX(2px)}.event-dot.has-client{background:#f59e0b;border-left:3px solid #d97706}.event-dot.has-client:hover{background:#d97706}.event-dot.has-assignment{border-left:3px solid #3182ce}.event-dot.has-assignment.has-client{border-left:3px solid #d97706}.more-events{color:#718096;font-size:.7rem;font-weight:500;padding:.125rem .25rem}.calendar-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.25rem}.btn-close{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:2rem;height:30px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:30px}.btn-close:hover{background-color:#edf2f7;color:#2d3748}.event-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#4a5568;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #cbd5e0;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.checkbox-label{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin:0;width:18px}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.btn-secondary{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary:hover{background-color:#f7fafc;border-color:#a0aec0}.btn-primary{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-primary:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.btn-delete{background:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;margin-right:auto;padding:.75rem 1.5rem;transition:all .2s}.btn-delete:hover{background:#c53030;box-shadow:0 4px 12px #e53e3e4d;transform:translateY(-1px)}.error-message{background-color:#fed7d7;border:1px solid #fc8181;border-radius:6px;color:#c53030}.error-message,.success-message{font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.success-message{background-color:#c6f6d5;border:1px solid #9ae6b4;border-radius:6px;color:#22543d}.loading-state{color:#718096;padding:3rem;text-align:center}.status-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.btn-status{background:#fff;border:2px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-status:hover{border-color:#3182ce;color:#3182ce}.btn-status.active{background:linear-gradient(135deg,#3182ce,#2c5282);border-color:#3182ce;color:#fff}.btn-status-action{background:#f59e0b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-status-action:hover{background:#d97706;box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-1px)}.btn-complete{background:#10b981}.btn-complete:hover{background:#059669;box-shadow:0 4px 12px #10b9814d}.event-dot.status-scheduled{border-left:3px solid #3182ce}.event-dot.status-arrived{background:#fffbeb;border-left:3px solid #f59e0b}.event-dot.status-started{background:#eff6ff;border-left:3px solid #3b82f6}.event-dot.status-completed{background:#f0fdf4;border-left:3px solid #10b981;opacity:.8}.task-list-panel{background:#fff;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;position:fixed;right:-400px;top:0;transition:right .3s ease;width:400px;z-index:999}.task-list-panel.open{right:0}.task-list-header{align-items:center;background:linear-gradient(135deg,#3182ce,#2c5282);border-bottom:1px solid #e2e8f0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.task-list-header h2{font-size:1.25rem;font-weight:600;margin:0}.btn-close-task-list{align-items:center;background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;line-height:1;padding:.25rem .5rem;transition:background .2s;width:30px}.btn-close-task-list:hover{background:#ffffff4d}.task-list-content{flex:1 1;overflow-y:auto;padding:1rem}.no-tasks{color:#718096;padding:3rem 1rem;text-align:center}.no-tasks p{font-size:.95rem;margin:0}.task-items{display:flex;flex-direction:column;gap:1rem}.task-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #3182ce;border-radius:8px;cursor:pointer;padding:1rem;transition:all .2s}.task-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateX(-2px)}.task-item.status-arrived{background:#fffbeb;border-left-color:#f59e0b}.task-item.status-started{background:#eff6ff;border-left-color:#3b82f6}.task-item.status-completed{background:#f0fdf4;border-left-color:#10b981;opacity:.9}.task-item-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.task-title{color:#2d3748;flex:1 1;font-size:1rem;font-weight:600;margin:0}.task-status-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize;white-space:nowrap}.task-status-badge.status-scheduled{background:#dbeafe;color:#1e40af}.task-status-badge.status-arrived{background:#fef3c7;color:#92400e}.task-status-badge.status-started{background:#dbeafe;color:#1e3a8a}.task-status-badge.status-completed{background:#d1fae5;color:#065f46}.task-description{color:#4a5568;font-size:.875rem;line-height:1.5;margin:.5rem 0}.task-meta{color:#718096;display:flex;flex-direction:column;font-size:.8rem;gap:.25rem;margin-top:.75rem}.task-time{font-weight:500}.task-client{font-style:italic}.task-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.btn-task-action{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-family:inherit;font-size:.85rem;font-weight:500;min-width:100px;padding:.5rem 1rem;transition:all .2s}.btn-arrived{background:#f59e0b;color:#fff}.btn-arrived:hover{background:#d97706;box-shadow:0 2px 8px #f59e0b4d;transform:translateY(-1px)}.btn-started{background:#3b82f6;color:#fff}.btn-started:hover{background:#2563eb;box-shadow:0 2px 8px #3b82f64d;transform:translateY(-1px)}.btn-completed{background:#10b981;color:#fff}.btn-completed:hover{background:#059669;box-shadow:0 2px 8px #10b9814d;transform:translateY(-1px)}.task-completed{opacity:.7}.task-completed:hover{box-shadow:none;transform:none}.task-completed-note{background:#f0fdf4;border-radius:4px;margin-top:.75rem;padding:.5rem;text-align:center}.task-completed-note small{color:#065f46;font-size:.8rem;font-style:italic}.status-display{display:flex;flex-direction:column;gap:.5rem}.status-badge-completed{background:linear-gradient(135deg,#10b981,#059669);border-radius:6px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;padding:.5rem 1rem;text-align:center}.status-note{color:#718096;display:block;font-size:.85rem;font-style:italic;margin-top:.25rem}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:100%}.modal-content,.modal-content.modal-large{max-width:1250px}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.modal-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.btn-close-modal{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:2rem;height:2rem;justify-content:center;padding:0;transition:all .2s;width:2rem}.btn-close-modal:hover{background:#f7fafc;color:#2d3748}.modal-body{padding:2rem}.modal-body p{color:#4a5568;font-size:.95rem;margin:0 0 1rem}.completion-note-form{gap:1.5rem}.completion-note-form,.completion-note-form .form-group{display:flex;flex-direction:column}.completion-note-form .form-group label{color:#4a5568;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.completion-note-input{border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:.9rem;padding:.75rem;resize:vertical;width:100%}.completion-note-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem 2rem}.modal-footer .btn-primary{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .2s}.modal-footer .btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.modal-footer .btn-primary:disabled{cursor:not-allowed;opacity:.5}.modal-footer .btn-secondary{background:#e2e8f0;border:none;border-radius:6px;color:#2d3748;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .2s}.modal-footer .btn-secondary:hover{background:#cbd5e0}.task-history-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin:0 auto;max-width:1400px;padding:2rem}.task-history-header{margin-bottom:2rem}.task-history-header h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.section-description{color:#718096;font-size:.95rem;margin:0}.task-history-list{margin-top:1.5rem}.task-history-table{border-collapse:collapse;font-size:.9rem;width:100%}.task-history-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;text-align:left}.task-history-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;padding:1rem;vertical-align:top}.task-history-row:hover{background-color:#f7fafc}.task-history-row.status-completed{opacity:.9}.task-time-small{color:#718096;font-size:.8rem;margin-top:.25rem}.task-title-cell{display:flex;flex-direction:column;gap:.5rem}.task-description-small{color:#718096;font-size:.85rem;font-style:italic}.completion-note-preview{background:#f0fdf4;border-radius:6px;color:#065f46;font-size:.85rem;margin-top:.5rem;padding:.75rem}.completion-note-preview div{margin-bottom:.25rem}.completion-note-preview div:last-child{margin-bottom:0}.link-button{background:none;border:none;color:#3182ce;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:0;text-decoration:underline}.link-button:hover{color:#2c5282}.no-client{color:#a0aec0;font-style:italic}.status-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize}.status-badge.status-scheduled{background:#dbeafe;color:#1e40af}.status-badge.status-arrived{background:#fef3c7;color:#92400e}.status-badge.status-started{background:#dbeafe;color:#1e3a8a}.status-badge.status-completed{background:#d1fae5;color:#065f46}.assigned-user{color:#4a5568;font-weight:500}.unassigned{color:#a0aec0;font-style:italic}.btn-view-task{background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-view-task:hover{box-shadow:0 4px 12px #3182ce4d;transform:translateY(-1px)}.empty-state{color:#718096;padding:3rem 1rem;text-align:center}@media (max-width:768px){.calendar-page{padding:1rem}.calendar-page.task-list-open{padding-right:1rem}.task-list-panel{right:-100%;width:100%}.calendar-day{min-height:80px}.form-row{grid-template-columns:1fr}.calendar-controls{flex-wrap:wrap}.btn-task-list{margin-left:0;margin-top:.5rem;width:100%}}.global-search{max-width:300px;position:relative;width:100%}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-input{background:#fff;border:1px solid #cbd5e0;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.75rem 2.5rem .75rem 1rem;transition:all .2s;width:100%}.search-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.search-icon{font-size:1.1rem;pointer-events:none;position:absolute;right:.75rem}.search-loading{animation:pulse 1.5s ease-in-out infinite;font-size:1.2rem;position:absolute;right:2.5rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.search-results{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000026;left:0;margin-top:.5rem;max-height:400px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.search-result-item{align-items:center;border-bottom:1px solid #f7fafc;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:background-color .2s}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background-color:#f7fafc}.result-icon{flex-shrink:0;font-size:1.5rem}.result-content{flex:1 1;min-width:0}.result-title{color:#2d3748;font-size:.95rem;font-weight:600;margin-bottom:.25rem}.result-subtitle,.result-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-subtitle{color:#718096;font-size:.85rem}.result-type-badge{background-color:#ebf8ff;border-radius:12px;color:#2c5282;flex-shrink:0;font-size:.75rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.search-no-results{color:#718096;font-size:.9rem;padding:2rem;text-align:center}@media (max-width:768px){.global-search{margin:0 1rem;max-width:100%}.search-input{font-size:.85rem;padding:.6rem 2rem .6rem .75rem}}.notifications-container{position:relative}.notifications-bell{align-items:center;background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;padding:.5rem;position:relative;transition:all .2s;width:40px}.notifications-bell:hover{background:#ffffff40;border-color:#fff6;transform:translateY(-1px)}.notification-badge{background:#ef4444;border:2px solid #1e3a5f;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;min-width:18px;padding:.15rem .4rem;position:absolute;right:-4px;text-align:center;top:-4px}.notifications-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:998}.notifications-dropdown{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:500px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);width:400px;z-index:999}.notifications-header{align-items:center;background:linear-gradient(135deg,#3182ce,#2c5282);border-bottom:1px solid #e2e8f0;color:#fff;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.notifications-header h3{font-size:1.1rem;font-weight:600;margin:0}.btn-mark-all-read{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.4rem .8rem;transition:all .2s}.btn-mark-all-read:hover{background:#ffffff4d;border-color:#ffffff80}.notifications-list{flex:1 1;max-height:450px;overflow-y:auto}.notifications-empty,.notifications-loading{color:#718096;font-size:.9rem;padding:2rem;text-align:center}.notification-item{align-items:flex-start;border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.5rem;position:relative;transition:background .2s}.notification-item:hover{background:#f7fafc}.notification-item.unread{background:#eff6ff;border-left:4px solid #3182ce}.notification-item.read{opacity:.8}.notification-content{flex:1 1}.notification-title{color:#2d3748;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.notification-meta{color:#718096;font-size:.8rem;margin-bottom:.5rem}.notification-note{background:#f7fafc;border-left:3px solid #3182ce;border-radius:4px;color:#4a5568;font-size:.85rem;line-height:1.5;margin-bottom:.5rem;padding:.5rem}.notification-time{color:#a0aec0;font-size:.75rem}.notification-actions{align-items:flex-start;display:flex;flex-shrink:0;gap:.5rem;margin-top:.5rem}.notification-unread-indicator{background:#3182ce;border-radius:50%;flex-shrink:0;height:8px;margin-top:.25rem;width:8px}.btn-remove-notification{align-items:center;background:#e53e3e;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:600;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:24px}.btn-remove-notification:hover{background:#c53030;box-shadow:0 2px 8px #e53e3e4d;transform:scale(1.1)}.btn-view-order-form{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;margin-top:.75rem;padding:.5rem 1rem;transition:all .2s}.btn-view-order-form:hover{background:#2c5282;box-shadow:0 2px 8px #3182ce4d;transform:translateY(-1px)}@media (max-width:768px){.notifications-dropdown{right:-10px;width:320px}}.app-with-nav{display:flex;flex-direction:column;min-height:100vh}.app-header{background:linear-gradient(135deg,#1e3a5f,#2c5282);border-bottom:1px solid #ffffff1a;box-shadow:0 4px 20px #00000026;color:#fff;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:auto 1fr auto;margin:0 auto;max-width:1600px;min-height:70px;padding:0 2.5rem}.logo-section{align-items:center;display:flex;flex-shrink:0}.logo-link{color:inherit;display:flex;flex-direction:column;text-decoration:none;transition:opacity .2s}.logo-link:hover{opacity:.95}.logo{font-size:1.6rem;font-weight:700;letter-spacing:-.5px;line-height:1.2;margin:0;text-shadow:0 2px 4px #0000001a}.tagline{font-size:.75rem;font-weight:400;letter-spacing:.5px;margin-top:.1rem;opacity:.85}.main-nav{align-items:center;display:flex;flex:1 1;gap:.25rem;justify-content:center}.nav-link{border-radius:8px;color:#fff;font-size:.95rem;font-weight:500;letter-spacing:.2px;opacity:.9;padding:.65rem 1.25rem;position:relative;text-decoration:none;transition:all .25s ease;white-space:nowrap}.nav-link:before{background:#fffc;border-radius:2px 2px 0 0;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .25s ease;width:0}.nav-link:hover{background-color:#ffffff1f;opacity:1;transform:translateY(-1px)}.nav-link:hover:before{width:60%}.nav-link.active{background-color:#fff3;box-shadow:0 2px 8px #00000026;font-weight:600;opacity:1}.nav-link.active:before{background:#fff;width:80%}.header-actions{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;min-width:200px}.user-email{font-size:.85rem;font-weight:400;max-width:200px;opacity:.9;overflow:hidden;padding:.25rem 0;text-overflow:ellipsis;white-space:nowrap}.btn-logout{background:linear-gradient(135deg,#ffffff26,#ffffff40);border:1px solid #ffffff40;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:.6rem 1.25rem;transition:all .25s ease;white-space:nowrap}.btn-logout:hover{background:linear-gradient(135deg,#ffffff40,#ffffff59);border-color:#fff6;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.btn-logout:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.app-main{background-color:#f5f5f5;flex:1 1}.app-footer{background-color:#fff;border-top:1px solid #e2e8f0;color:#718096;font-size:.9rem;margin-top:auto;padding:1.5rem 2rem;text-align:center}.app-footer p{margin:0;opacity:.7}.clock-in-out-buttons{align-items:center;display:flex;gap:.5rem}.btn-clock-in,.btn-clock-out{border:none;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.btn-clock-in{background-color:#48bb78;color:#fff}.btn-clock-in:hover:not(:disabled){background-color:#38a169;box-shadow:0 2px 4px #48bb784d;transform:translateY(-1px)}.btn-clock-out{background-color:#f56565;color:#fff}.btn-clock-out:hover:not(:disabled){background-color:#e53e3e;box-shadow:0 2px 4px #f565654d;transform:translateY(-1px)}.btn-clock-in:disabled,.btn-clock-out:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1200px){.header-content{gap:2rem;padding:0 2rem}.nav-link{font-size:.9rem;padding:.6rem 1rem}}@media (max-width:968px){.header-content{gap:1.5rem;grid-template-columns:auto 1fr;min-height:65px;padding:0 1.5rem}.main-nav{-webkit-overflow-scrolling:touch;grid-column:1/-1;justify-content:flex-start;order:3;overflow-x:auto;padding:.5rem 0;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.nav-link{flex-shrink:0;font-size:.85rem;padding:.55rem 1rem}.header-actions{min-width:auto}}@media (max-width:768px){.header-content{gap:1rem;min-height:60px;padding:0 1rem}.logo{font-size:1.4rem}.tagline{font-size:.7rem}.nav-link{font-size:.85rem;padding:.5rem .85rem}.user-email{font-size:.8rem;max-width:150px}.btn-logout{font-size:.85rem;padding:.5rem 1rem}}.loading-container{align-items:center;background:linear-gradient(135deg,#1e3a5f,#2c5282);display:flex;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.49569e46.css.map*/