/*
 * ResultPro v146 — Postgraduate Lecturer visual theme.
 * IMPORTANT: This file deliberately changes only colours, backgrounds,
 * borders and shadows. It does not redefine layout, dimensions, spacing,
 * grid/flex behaviour, positioning, overflow or responsive breakpoints.
 * The lecturer portal therefore retains the exact pre-v145 structure.
 */

body.pglect-background-v146,
body.pglect-login-background-v146 {
  --pglect-v146-forest: #073f35;
  --pglect-v146-forest-2: #0b5a4b;
  --pglect-v146-plum: #4f2f49;
  --pglect-v146-plum-2: #70405a;
  --pglect-v146-bronze: #b57a2a;
  --pglect-v146-gold: #e0b94e;
  --pglect-v146-ivory: #fffaf0;
  --pglect-v146-paper: rgba(255, 253, 247, 0.94);
  --pglect-v146-paper-soft: rgba(255, 250, 240, 0.88);
  --pglect-v146-ink: #12352f;
  --pglect-v146-muted: #4f625f;
  --pglect-v146-line: rgba(7, 63, 53, 0.22);
  --pglect-v146-art: url("../img/pg_lecturer_abstract_background.249b3dc66a53.png");
}

/* Page background only — original shell dimensions remain untouched. */
body.pglect-background-v146 {
  color: var(--pglect-v146-ink) !important;
  background-image:
    linear-gradient(135deg, rgba(4, 47, 40, 0.82), rgba(79, 47, 73, 0.60)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

body.pglect-background-v146 .pgfix-shell {
  background: rgba(245, 249, 246, 0.88) !important;
}

/* Header: same original arrangement, new lecturer-only palette. */
body.pglect-background-v146 .pgfix-header.pglect-public-header {
  background-image:
    linear-gradient(100deg, rgba(255, 253, 247, 0.96), rgba(246, 238, 226, 0.90)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center 38% !important;
  border-bottom-color: var(--pglect-v146-forest) !important;
  box-shadow: 0 8px 24px rgba(28, 43, 40, 0.13) !important;
}

body.pglect-background-v146 .pgfix-brand h1,
body.pglect-background-v146 .pgfix-brand strong {
  color: var(--pglect-v146-forest) !important;
}

body.pglect-background-v146 .pgfix-brand p,
body.pglect-background-v146 .pgfix-brand small {
  color: var(--pglect-v146-plum) !important;
}

body.pglect-background-v146 .pgfix-brand img {
  background-color: rgba(255, 255, 255, 0.96) !important;
  border-color: var(--pglect-v146-gold) !important;
  box-shadow: 0 6px 18px rgba(79, 47, 73, 0.16) !important;
}

body.pglect-background-v146 .pgfix-user.pglect-public-user {
  color: var(--pglect-v146-ink) !important;
  background-image:
    linear-gradient(rgba(255, 253, 247, 0.94), rgba(255, 250, 240, 0.94)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  border-color: rgba(181, 122, 42, 0.48) !important;
  box-shadow: 0 6px 18px rgba(28, 43, 40, 0.12) !important;
}

body.pglect-background-v146 .pgfix-user > span {
  color: var(--pglect-v146-forest) !important;
  background: #fff8e6 !important;
  border-color: var(--pglect-v146-bronze) !important;
}

body.pglect-background-v146 .pgfix-user strong { color: var(--pglect-v146-forest) !important; }
body.pglect-background-v146 .pgfix-user small { color: var(--pglect-v146-plum) !important; }

/* Navigation: no change to menu placement, height, spacing or dropdown logic. */
body.pglect-background-v146 .pg-public-nav.pglect-public-nav {
  background-image:
    linear-gradient(90deg, rgba(5, 48, 41, 0.97), rgba(38, 55, 53, 0.96) 56%, rgba(79, 47, 73, 0.94)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center 68% !important;
  border-bottom-color: var(--pglect-v146-gold) !important;
  box-shadow: 0 6px 18px rgba(20, 34, 31, 0.18) !important;
}

body.pglect-background-v146 .pg-public-nav.pglect-public-nav a,
body.pglect-background-v146 .pg-public-nav.pglect-public-nav summary {
  color: #fffdf7 !important;
  border-color: rgba(224, 185, 78, 0.28) !important;
  background-color: rgba(7, 63, 53, 0.22) !important;
}

body.pglect-background-v146 .pg-public-nav.pglect-public-nav a:hover,
body.pglect-background-v146 .pg-public-nav.pglect-public-nav summary:hover,
body.pglect-background-v146 .pg-public-nav.pglect-public-nav .is-active {
  color: #ffffff !important;
  background: linear-gradient(135deg, rgba(11, 90, 75, 0.94), rgba(112, 64, 90, 0.90)) !important;
  border-color: var(--pglect-v146-gold) !important;
}

body.pglect-background-v146 .pg-submenu-list {
  background-image:
    linear-gradient(rgba(6, 53, 45, 0.97), rgba(58, 38, 55, 0.97)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  border-color: rgba(224, 185, 78, 0.52) !important;
  box-shadow: 0 14px 34px rgba(19, 30, 28, 0.24) !important;
}

body.pglect-background-v146 .pg-submenu-list a { color: #fffdf7 !important; }
body.pglect-background-v146 .pg-submenu-list a:hover,
body.pglect-background-v146 .pg-submenu-list a.is-active {
  background: linear-gradient(135deg, var(--pglect-v146-forest-2), var(--pglect-v146-plum-2)) !important;
  color: #ffffff !important;
}

/* Existing page-title structure is preserved exactly. */
body.pglect-background-v146 .pgfix-page-title {
  background-image:
    linear-gradient(105deg, rgba(255, 255, 255, 0.96), rgba(255, 248, 235, 0.91)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
  border-color: rgba(7, 63, 53, 0.22) !important;
  border-left-color: var(--pglect-v146-plum) !important;
  box-shadow: 0 8px 24px rgba(26, 43, 39, 0.12) !important;
}

body.pglect-background-v146 .pgfix-page-title h2 { color: var(--pglect-v146-forest) !important; }
body.pglect-background-v146 .pgfix-page-title p { color: var(--pglect-v146-muted) !important; }
body.pglect-background-v146 .pgfix-page-icon {
  color: #ffffff !important;
  background-image:
    linear-gradient(135deg, rgba(7, 63, 53, 0.94), rgba(79, 47, 73, 0.90)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  border-color: var(--pglect-v146-gold) !important;
}

/* Dark hero/banner cards. Their original size and internal arrangement remain unchanged. */
body.pglect-background-v146 .pgfix-content :is(
  .pgld-hero,
  .pgld-courses-hero,
  .pgld-student-hero,
  .pglr-hero,
  .ol-hero,
  .pg-course-hero,
  .pglect-report-hero,
  .pg-settings-hero-card,
  .pgur-hero-card,
  .pg-bg-image-card,
  .pg-abstract-bg-hero
) {
  background-image:
    linear-gradient(108deg, rgba(5, 55, 46, 0.94), rgba(13, 85, 70, 0.88) 55%, rgba(79, 47, 73, 0.84)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
  border-color: rgba(224, 185, 78, 0.54) !important;
  box-shadow: 0 12px 30px rgba(20, 37, 33, 0.18) !important;
}

body.pglect-background-v146 .pgfix-content :is(
  .pgld-hero,
  .pgld-courses-hero,
  .pgld-student-hero,
  .pglr-hero,
  .ol-hero,
  .pg-course-hero,
  .pglect-report-hero,
  .pg-settings-hero-card,
  .pgur-hero-card,
  .pg-bg-image-card,
  .pg-abstract-bg-hero
) :is(h1, h2, h3, p, strong, span, small) {
  color: #fffdf7 !important;
}

/* Light cards use the same image under a strong ivory wash. */
body.pglect-background-v146 .pgfix-content :is(
  .pgld-panel,
  .pgld-bg-card,
  .pglect-account-panel,
  .pglect-scope-alert,
  .ol-panel,
  .ol-stat,
  .ol-meta-card,
  .ol-note,
  .pg-course-card,
  .pg-course-panel,
  .pg-self-allotment-control,
  .ol-self-window,
  .pg-settings-card,
  .pg-settings-tabs,
  .pgur-stat-card,
  .pg-score-card,
  .pg-preview-card,
  .pg-post-panel,
  .pg-format-card,
  .pgfix-stat,
  .pglect-field,
  .pgld-student-filter,
  .pgld-table-wrap,
  .pglect-table-wrap,
  .pglr-table-wrap,
  .ol-table-wrap,
  .pg-course-table-wrap,
  .pgur-table-wrap,
  .pg-settings-form-card,
  .pglect-account-form,
  .pg-rule,
  .pg-self-row,
  .card,
  .panel,
  .report-card,
  .filter-card,
  .form-card,
  .table-card,
  .stat-card
) {
  background-image:
    linear-gradient(110deg, rgba(255, 255, 255, 0.95), rgba(255, 248, 235, 0.90)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
  border-color: var(--pglect-v146-line) !important;
  box-shadow: 0 8px 24px rgba(25, 43, 39, 0.10) !important;
}

/* Headings and text contrast inside light lecturer cards. */
body.pglect-background-v146 .pgfix-content :is(h1, h2, h3, h4, .card-title, .panel-title) {
  color: var(--pglect-v146-forest) !important;
}
body.pglect-background-v146 .pgfix-content :is(p, small, .muted, .text-muted) {
  color: var(--pglect-v146-muted) !important;
}

/* Forms retain their original dimensions and alignment. */
body.pglect-background-v146 .pgfix-content :is(input, select, textarea) {
  color: #16352f !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  border-color: rgba(7, 63, 53, 0.24) !important;
}
body.pglect-background-v146 .pgfix-content :is(input, select, textarea):focus {
  border-color: var(--pglect-v146-plum) !important;
  box-shadow: 0 0 0 3px rgba(79, 47, 73, 0.12) !important;
}
body.pglect-background-v146 .pgfix-content label { color: var(--pglect-v146-forest) !important; }

/* Buttons — palette only, no size or placement changes. */
body.pglect-background-v146 .pgfix-content :is(
  button,
  .btn,
  .pg-btn,
  .pgfix-btn,
  .ol-btn,
  .pg-settings-btn,
  .pgur-btn
) {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--pglect-v146-forest), var(--pglect-v146-plum)) !important;
  border-color: rgba(224, 185, 78, 0.58) !important;
  box-shadow: 0 6px 16px rgba(32, 48, 44, 0.14) !important;
}
body.pglect-background-v146 .pgfix-content :is(
  button,
  .btn,
  .pg-btn,
  .pgfix-btn,
  .ol-btn,
  .pg-settings-btn,
  .pgur-btn
):hover {
  background: linear-gradient(135deg, var(--pglect-v146-forest-2), var(--pglect-v146-plum-2)) !important;
  border-color: var(--pglect-v146-gold) !important;
}

/* Tables retain their existing column widths and responsive behaviour. */
body.pglect-background-v146 .pgfix-content table {
  background-color: rgba(255, 255, 255, 0.92) !important;
  border-color: var(--pglect-v146-line) !important;
}
body.pglect-background-v146 .pgfix-content table thead,
body.pglect-background-v146 .pgfix-content table thead th {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--pglect-v146-forest), var(--pglect-v146-plum)) !important;
  border-color: rgba(224, 185, 78, 0.40) !important;
}
body.pglect-background-v146 .pgfix-content table tbody td {
  color: #183a33 !important;
  background-color: rgba(255, 255, 255, 0.90) !important;
  border-color: rgba(7, 63, 53, 0.13) !important;
}
body.pglect-background-v146 .pgfix-content table tbody tr:nth-child(even) td {
  background-color: rgba(250, 245, 235, 0.92) !important;
}
body.pglect-background-v146 .pgfix-content table tbody tr:hover td {
  background-color: rgba(238, 247, 241, 0.96) !important;
}

/* Messages retain the global five-second dismissal behaviour. */
body.pglect-background-v146 .pgfix-message.success,
body.pglect-background-v146 .alert-success {
  color: #145c43 !important;
  background-color: rgba(236, 253, 245, 0.96) !important;
  border-color: #77c7a6 !important;
}
body.pglect-background-v146 .pgfix-message.error,
body.pglect-background-v146 .pgfix-message.danger,
body.pglect-background-v146 .alert-danger {
  color: #8a2e2e !important;
  background-color: rgba(255, 241, 241, 0.97) !important;
  border-color: #e3a3a3 !important;
}
body.pglect-background-v146 .pgfix-message.warning,
body.pglect-background-v146 .alert-warning {
  color: #705012 !important;
  background-color: rgba(255, 249, 225, 0.97) !important;
  border-color: #dfbd58 !important;
}

/* Lecturer login pages: exact original two-column/single-card structures are retained. */
body.pglect-login-background-v146 {
  background-image:
    linear-gradient(135deg, rgba(4, 47, 40, 0.84), rgba(79, 47, 73, 0.63)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

body.pglect-login-background-v146 .pg-login-shell,
body.pglect-login-background-v146 .card {
  background-image:
    linear-gradient(rgba(255, 253, 247, 0.96), rgba(255, 250, 240, 0.94)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  border-color: rgba(224, 185, 78, 0.58) !important;
  box-shadow: 0 22px 64px rgba(16, 31, 28, 0.28) !important;
}

body.pglect-login-background-v146 .pg-brand-panel {
  background-image:
    linear-gradient(145deg, rgba(4, 57, 47, 0.95), rgba(12, 90, 75, 0.89) 58%, rgba(79, 47, 73, 0.90)),
    var(--pglect-v146-art) !important;
  background-size: cover !important;
  background-position: center !important;
}

body.pglect-login-background-v146 .pg-form-panel {
  background-color: rgba(255, 253, 247, 0.91) !important;
}
body.pglect-login-background-v146 .pg-form-panel h2,
body.pglect-login-background-v146 .brand h1 { color: var(--pglect-v146-forest) !important; }
body.pglect-login-background-v146 .pg-form-panel .intro,
body.pglect-login-background-v146 .brand span { color: var(--pglect-v146-muted) !important; }
body.pglect-login-background-v146 .pg-top-tag {
  color: var(--pglect-v146-forest) !important;
  background-color: #effaf5 !important;
  border-color: #8ec6ae !important;
}
body.pglect-login-background-v146 .pg-input-wrap,
body.pglect-login-background-v146 .field input {
  color: #17372f !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  border-color: rgba(7, 63, 53, 0.26) !important;
}
body.pglect-login-background-v146 .pg-login-btn,
body.pglect-login-background-v146 .btn {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--pglect-v146-forest), var(--pglect-v146-plum)) !important;
  box-shadow: 0 10px 24px rgba(29, 48, 43, 0.20) !important;
}
body.pglect-login-background-v146 .pg-home-btn {
  color: #2f2410 !important;
  background: linear-gradient(135deg, var(--pglect-v146-gold), var(--pglect-v146-bronze)) !important;
}
body.pglect-login-background-v146 .pg-mini-links a,
body.pglect-login-background-v146 .links a { color: var(--pglect-v146-plum) !important; }

/* Print remains plain and professional; the artwork is never printed. */
@media print {
  body.pglect-background-v146,
  body.pglect-login-background-v146,
  body.pglect-background-v146 .pgfix-shell,
  body.pglect-background-v146 .pgfix-content,
  body.pglect-background-v146 .pgfix-content * {
    background-image: none !important;
    box-shadow: none !important;
  }
}
