/* Study Abroad Portal - Primary Buttons */

.app-primary-button {
 background: #0F766E;
 border: 1px solid #0F766E;
 color: #FFFFFF;
 border-radius: 9px;
 font-weight: 700;
 box-shadow: 0 2px 5px rgba(15, 118, 110, 0.12);
 transition: background 0.2s ease, box-shadow 0.2s ease;
}

.app-primary-button:hover {
 background: #115E59;
 border-color: #115E59;
 color: #FFFFFF;
 box-shadow: 0 4px 9px rgba(15, 118, 110, 0.18);
}

/* Create Service Ticket - Page 31 */

.ticket-form-region {
 max-width: 900px;
 margin: 24px auto;
 background: #FFFFFF;
 border: 1px solid #E2E8F0;
 border-radius: 16px;
 box-shadow: 0 8px 24px rgba(16, 42, 67, 0.08);
 overflow: hidden;
}

.ticket-form-region .t-Region-header {
 background: #102A43;
 color: #FFFFFF;
 padding: 20px 24px;
 border-bottom: 0;
}

.ticket-form-region .t-Region-title {
 color: #FFFFFF;
 font-size: 1.25rem;
 font-weight: 700;
}

.ticket-form-region .t-Region-body {
 padding: 24px;
}

.ticket-form-region .t-Form-label {
 color: #334E68;
 font-weight: 600;
}

.ticket-form-region input,
.ticket-form-region select,
.ticket-form-region textarea {
 border-radius: 8px;
}

.ticket-form-region input:focus,
.ticket-form-region select:focus,
.ticket-form-region textarea:focus {
 border-color: #0F766E;
 box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12);
}

@media (max-width: 640px) {
 .ticket-form-region {
  margin: 12px 8px;
  border-radius: 12px;
 }

 .ticket-form-region .t-Region-body {
  padding: 16px;
 }
}

/* Support Request Introduction */

.ticket-intro-region {
 max-width: 900px;
 margin: 20px auto 0;
}

.ticket-intro {
 margin: 0 0 12px;
 color: #486581;
 font-size: 15px;
 line-height: 1.6;
}

/* =========================================
Admin Ticket Dashboard - Page 33
========================================= */

.ticket-admin-cards .a-CardView {
 background: #FFFFFF;
 border: 1px solid #E2E8F0;
 border-radius: 14px;
 box-shadow: 0 4px 14px rgba(16, 42, 67, 0.07);
 overflow: hidden;
 transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.ticket-admin-cards .a-CardView:hover {
 border-color: #B8D6D3;
 box-shadow: 0 8px 22px rgba(16, 42, 67, 0.12);
 transform: translateY(-2px);
}

.ticket-admin-cards .a-CardView-header {
 padding: 16px 18px 10px;
 border-bottom: 1px solid #EDF2F7;
}

.ticket-admin-cards .a-CardView-title {
 color: #102A43;
 font-size: 16px;
 font-weight: 700;
 line-height: 1.45;
}

.ticket-admin-cards .a-CardView-subTitle {
 color: #0F766E;
 font-size: 12px;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.35px;
}

.ticket-admin-cards .a-CardView-body {
 padding: 12px 18px 18px;
 color: #486581;
 font-size: 13px;
 line-height: 1.7;
 overflow-wrap: anywhere;
 word-break: normal;
}

.ticket-admin-cards .a-CardView-mainContent {
 padding: 0;
}

.ticket-admin-cards .a-CardView:hover .a-CardView-title {
 color: #0F766E;
}

@media (max-width: 640px) {
 .ticket-admin-cards .a-CardView {
  border-radius: 12px;
 }

 .ticket-admin-cards .a-CardView-header {
  padding: 14px;
 }

 .ticket-admin-cards .a-CardView-body {
  padding: 10px 14px 14px;
 }
}

/* Admin Ticket Cards - body layout */
.ticket-admin-cards .a-CardView-body p {
 margin: 0;
}


/* Admin Ticket Dashboard card body */
.ticket-admin-body {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 5px;
 padding: 2px 0;
 font-size: 13px;
 line-height: 1.6;
 color: #526477;
}

.ticket-admin-body span {
 display: block;
 width: 100%;
 overflow-wrap: anywhere;
}

.ticket-admin-body span + span::before {
 content: none;
}

.ticket-admin-body span:first-child {
 font-weight: 600;
 color: #334155;
}