:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#2c3e50;background-color:#f8f9fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}.App{min-height:100vh;background-color:#f8f9fa}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#fff;box-shadow:0 2px 10px #0000000d;position:sticky;top:0;z-index:1000}.nav-brand{text-decoration:none;display:flex;align-items:center;gap:10px}.brand-text{font-size:1.5rem;font-weight:800;text-transform:lowercase;letter-spacing:-1px;color:#000;font-family:Inter,sans-serif}.nav-links{display:flex;align-items:center;gap:24px}.nav-link{text-decoration:none;color:#4a5568;font-weight:500;transition:color .2s;font-size:.95rem}.nav-link:hover{color:#ff416c}.nav-link.active{font-weight:800;color:#000}.nav-user-section{display:flex;align-items:center;gap:16px;padding-left:24px;border-left:1px solid #edf2f7}.user-info{display:flex;align-items:center;gap:8px;color:#2d3748}.user-icon{color:#718096}.user-name{font-weight:600;font-size:.9rem}.logout-btn{padding:8px 16px;background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s;display:flex;align-items:center;gap:8px}.logout-btn:hover{background:#fff5f5;color:#e53e3e;border-color:#feb2b2}.settings-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s;color:#4a5568}.settings-btn:hover{background:#f7fafc}.settings-modal{max-width:400px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;padding:30px;border-radius:16px;width:100%;box-shadow:0 10px 40px #0003;position:relative;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;border-bottom:1px solid #edf2f7;padding-bottom:15px}.modal-header h3{margin:0;color:#2d3748;font-size:1.5rem}.close-modal{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer;padding:5px;line-height:1;display:flex;align-items:center;justify-content:center}.close-modal:hover{color:#4a5568}.modal-body{margin-bottom:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid #edf2f7}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.85rem;font-weight:700;color:#718096;margin-bottom:8px;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #e2e8f0;font-size:1rem;outline:none;transition:all .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ff416c;box-shadow:0 0 0 3px #ff416c1a}.cancel-btn{padding:10px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;font-weight:600;cursor:pointer}.save-btn{padding:10px 24px;background:linear-gradient(45deg,#ff4b2b,#ff416c);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #ff4b2b4d}.save-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #ff4b2b66}.delete-btn{padding:10px 20px;background:transparent;color:#e53e3e;border:1px solid #e53e3e;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s}.delete-btn:hover{background:#fff5f5;border-color:#c53030;color:#c53030}.main-content{padding:2rem;max-width:1200px;margin:0 auto}.recipient-container{padding:20px;max-width:1200px;margin:0 auto}.filters-container{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:25px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 15px #0000000a;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:8px;flex:1;min-width:180px;max-width:200px}.filter-group label{font-size:.8rem;font-weight:700;text-transform:uppercase;color:#718096;letter-spacing:.025em}.filter-group input,.filter-group select{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0;font-size:.95rem;color:#2d3748;transition:all .2s;outline:none;box-sizing:border-box}.filter-group input:focus,.filter-group select:focus{border-color:#ff416c;box-shadow:0 0 0 3px #ff416c1a}.filter-group.is-locked{flex:0 1 250px}.locked-filter-container{position:relative;display:flex;align-items:center;width:100%}.locked-filter-container input{padding-right:40px!important;background:#f8fafc!important;border-color:#e2e8f0!important;color:#4a5568!important;font-weight:600}.clear-id-filter{position:absolute;right:8px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#718096;font-size:1.2rem;transition:all .2s;line-height:1;padding:0}.clear-id-filter:hover{background:#fff5f5;color:#ff416c;border-color:#fed7d7}.clear-filters{padding:10px 20px;background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s;height:42px;flex-shrink:0}.clear-filters:hover{background:#edf2f7;border-color:#cbd5e0}.create-recipient-btn{padding:10px 20px;background:linear-gradient(45deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s;height:42px;box-shadow:0 4px 15px #007bff33;flex-shrink:0}.recipient-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;margin-top:20px}.recipient-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}.recipient-table th:nth-child(1),.recipient-table td:nth-child(1){width:40px}.recipient-table th:nth-child(2),.recipient-table td:nth-child(2){width:18%}.recipient-table th:nth-child(3),.recipient-table td:nth-child(3){width:18%}.recipient-table th:nth-child(4),.recipient-table td:nth-child(4){width:22%}.recipient-table th:nth-child(5),.recipient-table td:nth-child(5){width:10%}.recipient-table th:nth-child(6),.recipient-table td:nth-child(6){width:18%}.recipient-table th:nth-child(7),.recipient-table td:nth-child(7){width:12%}.checkbox-col{padding-left:16px!important;padding-right:0!important;text-align:center}.checkbox-col input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#ff416c}.selected-row{background-color:#f7fafc!important;border-left:3px solid #ff416c}.bulk-actions-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#2d3748;color:#fff;border-bottom:1px solid #4a5568}.selected-count{font-weight:600;font-size:.9rem}.bulk-buttons{display:flex;gap:10px}.bulk-buttons button{padding:6px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.bulk-buttons button:hover{background:#fff3;border-color:#fff}.bulk-buttons .bulk-delete{background:#e53e3e;border-color:#e53e3e}.bulk-buttons .bulk-delete:hover{background:#c53030;border-color:#c53030}.confirmation-dialog{max-width:400px!important;text-align:center}.confirmation-dialog .modal-header{justify-content:center;border:none;margin-bottom:15px}.confirmation-dialog .modal-footer{justify-content:center;border:none;gap:15px}.text-danger{color:#e53e3e}.danger-btn{background:#e53e3e!important;box-shadow:0 4px 15px #e53e3e4d!important}.danger-btn:hover{background:#c53030!important;box-shadow:0 6px 20px #e53e3e66!important}.recipient-table th{background-color:#f8f9fa;padding:16px;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;text-transform:uppercase;font-size:.85rem;letter-spacing:.05em}.recipient-table td{padding:16px;border-bottom:1px solid #eee;color:#212529;vertical-align:middle;overflow:hidden}.recipient-table td:not(:nth-child(5)){text-overflow:ellipsis}.recipient-table tr:last-child td{border-bottom:none}.recipient-table tr:hover{filter:brightness(.95);transition:all .2s ease}.fullname-cell{font-weight:500;color:#007bff;white-space:nowrap}.unprocessed-row{background-color:#fffaf0}.processed-row{background-color:#f0fff4}.unprocessed-indicator{color:#f6ad55;font-size:10px}.company-cell{color:#6c757d;white-space:nowrap}.email-cell{color:#4a5568;font-size:.9rem}.no-email{color:#cbd5e0;font-style:italic}.virtual-badge{background:#fff5f5;border:1px solid #fed7d7;border-radius:4px;padding:2px 4px;font-size:.8rem;cursor:help}.hand-delivery-badge{background:#e6fffa;border:1px solid #b2f5ea;border-radius:4px;padding:2px 4px;font-size:.8rem;cursor:help}.virtual-text{color:#ff416c;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.hand-delivery-text{color:#319795;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.send-status-cell{text-align:center;padding-right:20px!important}.status-toggle-buttons{display:flex;gap:4px;justify-content:center}.toggle-btn{padding:6px 12px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s;color:#718096}.toggle-btn.yes:hover{background:#f0fff4;color:#38a169;border-color:#c6f6d5}.toggle-btn.no:hover{background:#fff5f5;color:#e53e3e;border-color:#fed7d7}.toggle-btn.yes.active{background:#38a169;color:#fff;border-color:#38a169;box-shadow:0 2px 8px #38a1694d}.toggle-btn.no.active{background:#e53e3e;color:#fff;border-color:#e53e3e;box-shadow:0 2px 8px #e53e3e4d}.address-cell{line-height:1.4}.responsible-cell{display:inline-block;padding:4px 12px;border-radius:20px;background-color:#e9ecef;font-size:.85rem;color:#495057;white-space:nowrap}.year-badge{display:inline-block;padding:4px 10px;border-radius:6px;background-color:#e6fffa;color:#2c7a7b;font-weight:600;font-size:.85rem;border:1px solid #b2f5ea}.year-none{color:#a0aec0;font-size:.85rem;font-style:italic}.loading-container{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.2rem;color:#6c757d}.error-container{color:#d9534f;padding:20px;background:#fdf7f7;border-radius:8px;border:1px solid #d9534f;margin-top:20px}.pagination-wrapper{display:flex;justify-content:center;margin-top:30px}.pagination{display:flex;list-style:none;padding:0;gap:8px}.page-item{cursor:pointer}.page-link{display:block;padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;color:#4a5568;text-decoration:none;font-weight:500;transition:all .2s;background:#fff}.page-item:hover .page-link{background-color:#f7fafc;border-color:#cbd5e0}.page-item.active .page-link{background-color:#ff416c;color:#fff;border-color:#ff416c}.page-item.disabled .page-link{color:#a0aec0;cursor:not-allowed;background-color:#edf2f7}.recipient-table tr{cursor:pointer}.company-modal{max-width:700px;width:90%}.addresses-section{margin-top:25px;border-top:1px solid #edf2f7;padding-top:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header h4{margin:0;color:#2d3748;font-size:1.1rem}.add-address-btn{padding:6px 12px;background:#48bb78;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s}.add-address-btn:hover{background:#38a169}.address-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto;padding-right:5px}.address-edit-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px}.address-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#718096;font-size:.8rem;font-weight:600;text-transform:uppercase}.remove-address-btn{background:#feb2b2;color:#c53030;border:none;width:24px;height:24px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.remove-address-btn:hover{background:#fc8181;color:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .form-group:last-child{grid-column:span 2}.no-addresses{text-align:center;color:#a0aec0;font-style:italic;padding:20px;background:#f7fafc;border-radius:8px;border:1px dashed #cbd5e0}.loading-small{text-align:center;padding:20px;color:#4a5568}.address-list::-webkit-scrollbar{width:6px}.address-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.address-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:10px}.address-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.company-container{padding:20px;max-width:1000px;margin:0 auto}.company-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000d;overflow:hidden;margin-bottom:20px}.company-table{width:100%;border-collapse:collapse;text-align:left}.company-table th{background:#f8fafc;padding:15px 20px;font-weight:600;color:#4a5568;border-bottom:2px solid #edf2f7;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.sortable-header{cursor:pointer;transition:background-color .2s;position:relative}.sortable-header:hover{background-color:#edf2f7;color:#ff416c}.company-table td{padding:15px 20px;border-bottom:1px solid #edf2f7;color:#2d3748;font-size:.95rem}.company-table tr:last-child td{border-bottom:none}.company-table tr{cursor:pointer;transition:background .2s}.company-table tr:hover{background:#f7fafc}.name-cell{font-weight:600;color:#1a202c}.address-count-badge{display:inline-block;padding:4px 12px;border-radius:20px;background-color:#ebf8ff;color:#2b6cb0;font-size:.85rem;font-weight:700;border:1px solid #bee3f8}.loading-container,.error-container{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:1.1rem;color:#4a5568}.error-container{color:#e53e3e}.create-recipient-btn{padding:10px 20px;background:linear-gradient(45deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s;height:42px;box-shadow:0 4px 15px #007bff33;margin-left:auto}.create-recipient-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #007bff4d}.show-recipients-btn{padding:6px 12px;background:#f8f9fa;border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.show-recipients-btn:hover{background:#ff416c;color:#fff;border-color:#ff416c}.export-container{padding:40px 20px;max-width:1000px;margin:0 auto}.export-header{margin-bottom:40px}.export-header h1{font-size:2.5rem;color:#2d3748;margin:0 0 10px}.export-header p{color:#718096;font-size:1.1rem;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-bottom:50px}.stat-card{background:#fff;padding:30px;border-radius:16px;box-shadow:0 4px 20px #0000000d;display:flex;flex-direction:column;align-items:center;transition:transform .2s}.stat-card:hover{transform:translateY(-5px)}.stat-label{font-size:.9rem;font-weight:700;text-transform:uppercase;color:#718096;margin-bottom:10px;letter-spacing:.05em}.stat-value{font-size:3rem;font-weight:800;color:#2d3748}.stat-card.total{border-top:5px solid #4a5568}.stat-card.postal{border-top:5px solid #007bff}.stat-card.hand{border-top:5px solid #38a169}.stat-card.virtual{border-top:5px solid #ff416c}.stat-card.postal .stat-value{color:#007bff}.stat-card.hand .stat-value{color:#38a169}.stat-card.virtual .stat-value{color:#ff416c}.export-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:20px}.export-card{background:#fff;padding:40px;border-radius:16px;box-shadow:0 10px 30px #00000014;text-align:center;width:100%;box-sizing:border-box}.export-card h3{font-size:1.5rem;color:#2d3748;margin:0 0 15px}.export-card p{color:#718096;margin-bottom:30px;line-height:1.6}.export-btn{padding:15px 40px;background:linear-gradient(45deg,#007bff,#0056b3);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #007bff4d}.export-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #007bff66}.export-btn:active:not(:disabled){transform:translateY(0)}.export-btn.virtual{background:linear-gradient(45deg,#ff416c,#ff4b2b);box-shadow:0 4px 15px #ff416c4d}.export-btn.virtual:hover:not(:disabled){box-shadow:0 8px 25px #ff416c66}.export-btn.hand{background:linear-gradient(45deg,#38a169,#2f855a);box-shadow:0 4px 15px #38a1694d}.export-btn.hand:hover:not(:disabled){box-shadow:0 8px 25px #38a16966}.loading{text-align:center;font-size:1.2rem;color:#718096;padding:100px 0}
