:root {
  --color-primary-base: 32 62 97;
  --color-primary-gradient: 91 123 162;
  --color-primary-button-text: 32 62 97;
  --color-primary-button-alternative-text: 255 255 255;
  --color-secondary-base: 242 103 34;
  --color-secondary-gradient: 194 57 0;
  --color-secondary-button-text: 255 255 255;
  --color-tertiary-base: 68 68 68;
  --color-tertiary-gradient: 134 134 134;
  --color-tertiary-button-text: 68 68 68;
  --color-success-base: 122 166 12;
  --color-success-gradient: 84 125 0;
  --color-success-button-text: 255 255 255;
  --color-info-base: 53 132 228;
  --color-info-gradient: 0 94 187;
  --color-info-button-text: 255 255 255;
  --color-warning-base: 240 163 13;
  --color-warning-gradient: 188 115 0;
  --color-warning-button-text: 0 0 0;
  --color-danger-base: 224 27 36;
  --color-danger-gradient: 182 0 0;
  --color-danger-button-text: 255 255 255;
  --color-form-base: 32 62 97;
}







/* UNISAN-STYLE-BEGIN (gaya "Cerah" UNISAN: latar biru muda, kartu putih bulat, aksen hijau; dipasang oleh apply-theme-css.sh) */
:root {
  --unisan-accent: var(--color-success-base, 119 170 12);   /* hijau tema */
  --unisan-page-top: 232 242 253;                             /* latar atas: biru muda */
  --unisan-page-bottom: 245 249 255;                          /* latar bawah: hampir putih */
  --unisan-line: 214 226 240;
  --unisan-shadow: 30 64 110;
}

/* Latar halaman: gradasi biru muda */
body {
  background-color: rgb(var(--unisan-page-bottom));
  background-image: linear-gradient(180deg, rgb(var(--unisan-page-top)) 0%, rgb(var(--unisan-page-bottom)) 420px);
  background-repeat: no-repeat;
  background-attachment: fixed;
}

/* Topbar: putih dengan garis hijau di bawahnya */
.app-topbar {
  border-bottom-color: rgb(var(--unisan-line));
  box-shadow:
    inset 0 -3px 0 rgb(var(--unisan-accent)),
    0 4px 16px rgb(var(--unisan-shadow) / 0.08);
}

/* Sidebar: putih, sudut kanan membulat, bayangan lembut */
.app-sidebar {
  background-color: #ffffff;
  background-image: none;
  border-right-color: rgb(var(--unisan-line));
  border-radius: 0 1rem 1rem 0;
  box-shadow: 4px 0 20px rgb(var(--unisan-shadow) / 0.07);
}
.app-sidebar .p-panelmenu-header-link,
.app-sidebar .p-panelmenu-item-link,
.app-sidebar .p-panelmenu-header-label,
.app-sidebar .p-panelmenu-item-label {
  color: rgb(var(--color-primary-base));
  font-weight: 600;
}
.app-sidebar .p-panelmenu-header-icon,
.app-sidebar .p-panelmenu-item-icon,
.app-sidebar .p-panelmenu-submenu-icon {
  color: rgb(var(--unisan-accent));
}
.app-sidebar .p-panelmenu-header-link:hover,
.app-sidebar .p-panelmenu-item-link:hover {
  background-color: rgb(var(--unisan-accent) / 0.12);
  border-radius: 0.75rem;
}
.app-sidebar .p-panelmenu-header.p-panelmenu-header-active .p-panelmenu-header-content,
.app-sidebar .p-panelmenu-header[data-p-active="true"] .p-panelmenu-header-content {
  background-color: rgb(var(--unisan-accent) / 0.12);
  border-radius: 0.75rem;
}

/* Judul halaman: balok hijau di kiri */
.section-header {
  border-bottom: 1px solid rgb(var(--unisan-line));
  padding-bottom: 0.7rem;
  margin-bottom: 1.1rem;
}
.section-header__title {
  color: rgb(var(--color-primary-base));
  font-weight: 700;
  border-left: 5px solid rgb(var(--unisan-accent));
  padding-left: 0.75rem;
  border-radius: 2px;
}

/* Kartu: putih, sudut bulat, bayangan lembut, naik sedikit saat disorot */
.p-card {
  background-color: #ffffff;
  border: 1px solid rgb(var(--unisan-line));
  border-radius: 1rem;
  box-shadow:
    0 2px 4px rgb(var(--unisan-shadow) / 0.05),
    0 8px 24px rgb(var(--unisan-shadow) / 0.08);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.p-card:hover {
  transform: translateY(-2px);
  box-shadow:
    0 4px 8px rgb(var(--unisan-shadow) / 0.07),
    0 14px 32px rgb(var(--unisan-shadow) / 0.12);
}

/* Tabel: header hijau muda, baris selang-seling, sorot hijau */
.p-datatable {
  background-color: #ffffff;
  border: 1px solid rgb(var(--unisan-line));
  border-radius: 1rem;
  box-shadow: 0 2px 10px rgb(var(--unisan-shadow) / 0.06);
}
.p-datatable .p-datatable-thead > tr > th {
  background-color: rgb(var(--unisan-accent) / 0.14);
  color: rgb(var(--color-primary-base));
  font-weight: 700;
  border-bottom: 2px solid rgb(var(--unisan-accent) / 0.5);
}
.p-datatable .p-datatable-tbody > tr:nth-child(even) {
  background-color: rgb(var(--unisan-page-top) / 0.35);
}
.p-datatable .p-datatable-tbody > tr {
  transition: background-color 0.12s ease;
}
.p-datatable .p-datatable-tbody > tr:hover {
  background-color: rgb(var(--unisan-accent) / 0.1);
}

/* Tombol: lebih bulat dan sedikit timbul */
.p-button {
  border-radius: 0.75rem;
  font-weight: 600;
  box-shadow: 0 1px 2px rgb(var(--unisan-shadow) / 0.12);
}

/* Kotak isian: fokus hijau */
.p-inputtext:enabled:focus,
.p-select:not(.p-disabled).p-focus,
.p-textarea:enabled:focus {
  border-color: rgb(var(--unisan-accent));
  box-shadow: 0 0 0 3px rgb(var(--unisan-accent) / 0.2);
}

.app-sidebar__institution-address {
  color: rgb(var(--color-primary-base) / 0.7);
}

/* Breadcrumb: latar transparan agar menyatu dengan latar halaman */
.app-breadcrumb,
.p-breadcrumb {
  background-color: transparent;
}
.app-breadcrumb .p-breadcrumb-item-link {
  color: rgb(var(--color-primary-base));
}
/* Tautan halaman menu (mis. "Panduan LMS") di sidebar dan di bawah form login: tampil seperti tombol kecil */
a.text-sm[href^="/pages/"] {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgb(var(--color-primary-base)) !important;
  font-weight: 700;
  background-color: rgb(var(--unisan-accent) / 0.12);
  border: 1px solid rgb(var(--unisan-accent) / 0.4);
  border-radius: 10px;
  padding: 8px 12px;
  text-decoration: none !important;
}
a.text-sm[href^="/pages/"]:hover {
  background-color: rgb(var(--unisan-accent) / 0.22);
}
a.text-sm[href^="/pages/"]::before {
  content: "";
  flex: none;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* UNISAN-STYLE-END */
