body {
     font-family: Arial, sans-serif;
     margin: 0;
     padding: 0;
     line-height: 1.3;
}

.container {
     max-width: 840px;
     margin: 50px auto;
     padding: 20px;
     background: #e8ebf4;
     box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

h1 {
     text-align: center;
     color: #333;
     margin: 0 0 0.7em 0;
}

.message-list,
.event-list {
     display: flex;
     flex-direction: column;
     gap: 10px;
}

.message-item,
.event-item {
     padding: 15px;
     background: #fff;
     border-radius: 5px;
     display: flex;
     justify-content: space-between;
     align-items: center;
}

.message-item.disabled {
     background: #cccccc;
     color: #666;
}

.message-item p,
.event-item p {
     margin: 0 0 10px 0;
     font-size: 0.8em;
}

.message-item .cron,
.event-item .details {
     color: #666;
     margin: 0;
     font-size: 0.8em;
}

.message-item .actions,
.event-item .actions {
     display: flex;
     gap: 0px;
}

.message-item .actions button,
.event-item .actions button {
     background: none;
     border: none;
     cursor: pointer;
     color: #333;
     font-size: 0.8em;
     padding: 1px 6px;
}

.message-item .actions button:hover,
.event-item .actions button:hover {
     color: #007BFF;
}

.add-button, .reset-button {
     display: inline;
     border: none;
}

.button-group {
     display: flex;
     justify-content: center;
     gap: 10px;
}

.add-button i {
     margin-right: 5px;
}

.add-button:hover {
     background-color: #0056b3;
}

#editModal textarea,
#editModal input,
#eventModal input,
#eventModal select {
     font-size: 0.8em;
}

dialog header .close-button,
dialog header .close-event-modal {
     color: #aaa;
     float: right;
     font-weight: bold;
}

dialog header .close-button:hover,
dialog header .close-button:focus,
dialog header .close-event-modal:hover,
dialog header .close-event-modal:focus {
     color: black;
     text-decoration: none;
     cursor: pointer;
}

dialog footer button {
     padding: 0.5em 1em;
}

button {
     font-size: 0.8em;
}

#alerts {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
}

.alert {
     padding: 20px;
     background-color: #f44336;
     color: white;
     opacity: 0;
     margin-bottom: 15px;
     font-size: 0.9em;
     min-width: 350px;
     max-width: 800px;
     border-radius: 5px;
     transition: all 0.25s;
     transition-behavior: allow-discrete;
     opacity: 1;
     scale: 1;
}

.alert.success {
     background-color: #04AA6D;
}

.closebtn {
     margin-left: 15px;
     color: white;
     font-weight: bold;
     float: right;
     font-size: 22px;
     line-height: 20px;
     cursor: pointer;
     transition: 0.3s;
}

.closebtn:hover {
     color: grey;
}

.shorten-link {
     background: #fff;
     padding: 20px;
     border-radius: 5px;
     margin-bottom: 30px;
}

.shorten-link label {
     font-weight: bold;
     margin-top: 10px;
     display: block;
     font-size: 0.9em;
}

.shorten-link input {
     width: 100%;
     margin-bottom: 10px;
     font-size: 0.9em;
     padding: 8px;
     border: 1px solid #ccc;
     border-radius: 4px;
}

#shortenButton, #viewLinksButton {
     margin-top: 10px;
     width: 100%;
     padding: 10px;
     font-size: 1em;
     color: white;
     border: none;
     border-radius: 4px;
     cursor: pointer;
}

#shortenButton:hover, #viewLinksButton:hover {
     background-color: #0056b3;
}
/* 
 LINKS PAGE
*/
.links-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .5rem;
}

.links-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: flex-end;
  margin-bottom: 1rem;
}

.shortlink-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.link-card {
  padding: 15px;
  background: #fff;
  border-radius: 5px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.link-info h3 {
  margin: 0 0 6px 0;
  font-size: 1rem;
  word-break: break-all;
}

.link-info p {
  margin: 0 0 8px 0;
  font-size: 0.85em;
}

.link-info p a {
     word-break: break-all;
}

.link-info .muted {
  color: #666;
}

.link-card .actions {
  display: flex;
  gap: 4px;
}

.link-card .actions button {
  background: none;
  border: none;
  cursor: pointer;
  color: #333;
  font-size: 0.9em;
  padding: 2px 8px;
}

.link-card .actions button:hover {
  color: #007BFF;
}