 .container-mobile-header {
     padding-right: 1em !important;
     padding-left: 1em !important;
 }

 .custom-list-item {
     display: flex;
     align-items: center;
     background: #fff;
     border-radius: 40px;
     padding: 12px 16px;
     width: 100%;
     margin: 24px 0;
     box-sizing: border-box;
     gap: 16px;
     box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.04);
     transition-duration: 800ms;
 }

 .custom-list-item img {
     height: 35px;
     width: auto;
     flex-shrink: 0;
 }

 .custom-list-item:hover {
     background-color: #d8e6f3;
     transform: translateY(-2px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
 }

 body.dark-mode .custom-list-item {
     background-color: #1c1f2b;
     color: #fff !important;
     border: 1px solid #2b2b2b33;
     box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.233), 0 4px 12px rgba(0, 0, 0, 0.1);
 }

 body.dark-mode .custom-list-item:hover {
     background-color: #334250;
     transform: translateY(-2px);
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
 }

 .line-label {
     background: #ff3b3b;
     color: #fff;
     font-weight: bold;
     border-radius: 13.6px / 19.2px;
     padding: 5px 10px;
     font-size: 15px;
     letter-spacing: 1px;
     margin-right: 0px;
     border: 2px solid #fff;
 }

 .line-name {
     font-weight: 600;
     font-size: 18px;
     color: #111;
     flex: 1;
 }

 .status-icon {
     background: #43b02a;
     color: #fff;
     border-radius: 50%;
     width: 33px;
     height: 33px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 15px;
 }

 .line-label.nsl {
     background: #e1251b;
 }

 .line-label.ewl {
     background: #00953b;
 }

 .line-label.ccl {
     background: #ff9e18;
     color: #000;
 }

 .line-label.dtl {
     background: #0055b8;
 }

 .line-label.nel {
     background: #9e28b5;
 }

 .line-label.tel {
     background: #9d5918;
 }

 .line-label.lrt {
     background: #718472;
 }

 .alert-message-content a {
     color: #000;
     text-decoration: underline;
     font-weight: bold;
 }

 .pulse {
     animation: pulse-animation 2s infinite;
 }

 @keyframes pulse-animation {
     0% {
         box-shadow: 0 0 0 0px rgba(148, 148, 148, 0.2);
     }

     100% {
         box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
     }
 }

 body.dark-mode .alert-message-content a {
     color: #fff;
     text-decoration: underline;
     font-weight: bold;
 }

 .custom-list-item {
     text-decoration: none;
     color: inherit;
 }

 .custom-list-item:visited {
     color: inherit;
 }

 .tsu {
     padding: 7em 1em 3em 1em;
 }

 @media (max-width: 994px) {
     .tsu {
         padding: 3em 1em 7em 1em;
     }
 }