.toast-bar { text-align: center; padding: 8px 12px; font-weight: bold; border-radius: 4px; margin-bottom: 10px; } /* Communication Screen Wrapper */ #communication-screen { max-width: 900px; margin: 20px auto; padding: 20px; background: #fff; border-radius: 12px; box-shadow: 0 3px 10px rgba(0,0,0,0.08); } /* Header */ #communication-screen h2 { font-size: 1.6rem; font-weight: 600; margin-bottom: 20px; color: #2c3e50; } /* Category Selector */ #communication-screen .btn-group label { min-width: 100px; font-weight: 500; border-radius: 25px !important; transition: all 0.3s ease; } #communication-screen .btn-group input:checked + label { color: #fff !important; } /* Form Styling */ #communication-screen input, #communication-screen textarea { border-radius: 8px; border: 1px solid #ddd; font-size: 0.8rem; padding: 10px; transition: border-color 0.3s ease; } #communication-screen input:focus, #communication-screen textarea:focus { border-color: #007bff; outline: none; box-shadow: 0 0 3px rgba(0,123,255,0.4); } /* Submit Button */ #communication-screen button { font-size: 0.9rem; font-weight: 500; border-radius: 8px; padding: 3px; transition: background 0.3s ease; width: 80px !important; height: 30px !important; } #communication-screen button:hover { background: #0056b3; } /* Table */ #communication-screen table { margin-top: 20px; border-radius: 8px; overflow: hidden; } #communication-screen table thead { background: #f7f9fb; font-size: 0.8rem; } #communication-screen table th { padding: 10px; vertical-align: middle; font-size: 0.8rem; } #communication-screen table td { padding: 10px; vertical-align: middle; font-size: 0.75rem; } #communication-screen table tbody tr:hover { background: #f9fcff; } /* Status Badge */ .comm-status { padding: 4px 10px; border-radius: 12px; font-size: 0.75rem; font-weight: 500; display: inline-block; } .comm-status.Pending { background: #fff3cd; color: #856404; } .comm-status.Approved { background: #d4edda; color: #155724; } .comm-status.Rejected { background: #f8d7da; color: #721c24; } /* Collapsible Message Row */ .comm-message-row { display: none; background: #f9fcff; } .comm-message { padding: 12px; font-size: 0.9rem; color: #333; border-left: 3px solid #007bff; animation: slideDown 0.3s ease; } /* Slide down animation */ @keyframes slideDown { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } } /* Cursor feedback */ .comm-row { cursor: pointer; } .comm-row:hover { background: #eef6ff; } .btn-group { display: flex; justify-content: center; gap: 12px; /* controls spacing between buttons */ } /* Category header style */ #commCategoryHeader { text-align: center; font-size: 1.3rem; font-weight: bold; margin: 15px 0; padding: 10px; border-radius: 8px; display: none; /* hidden until category is selected */ } /* Category-specific colors */ #commCategoryHeader.leave { background: #eaf4ff; color: #0d6efd; /* Bootstrap Primary */ border: 1px solid #0d6efd; } #commCategoryHeader.complaint { background: #ffeaea; color: #dc3545; /* Bootstrap Danger */ border: 1px solid #dc3545; } #commCategoryHeader.update { background: #eaffea; color: #198754; /* Bootstrap Success */ border: 1px solid #198754; } .comm-details { display: none; /* hidden by default */ } .comm-details.show { display: table-row; /* visible when expanded */ } .comm-details-row { display: flex; flex-direction: column; /* stack items vertically */ align-items: flex-start; /* align left */ gap: 4px; /* space between rows */ padding: 8px; font-size: 12px; border-left: 4px solid #007bff; /* blue sidebar */ background-color: #f8faff; /* subtle background */ } .comm-details-row span { display: block; width: 100%; } /* Common styling */ .status-label { display: inline-block; padding: 4px 10px; border-radius: 12px; font-size: 13px; font-weight: 600; color: #fff; text-transform: capitalize; } /* Specific status colors */ .status-pending { background-color: rgb(255, 193, 7); /* Yellow */ color: #000; /* dark text for readability */ } .status-approved { background-color: rgb(40, 167, 69); /* Green */ } .status-rejected { background-color: rgb(220, 53, 69); /* Red */ } .status-acknowledged { background-color: rgb(23, 162, 184); /* Teal */ } .status-resolved { background-color: rgb(95, 153, 239); /* Blue */ } .status-completed { background-color: rgb(118, 187, 90); /* Light green */ }