/* HAMUP site skin — modern, light "product dashboard" look for every page, consistent with the dark landing.
   Pure CSS on top of Boost Union; loaded via additionalhtmlhead (build-landing.php). Remove = drop the <link>. */
:root{--h-rose:#ff3d7f;--h-maroon:#b0244f;--h-deep:#8C1D40;--h-amber:#ffb020;--h-ink:#14101a;--h-text:#2a2230;--h-mute:#6f6676;
  --h-line:#ece7f0;--h-bg:#f7f5fa;--h-card:#fff;--h-grad:linear-gradient(135deg,#ff3d7f 0%,#b0244f 100%);
  --h-grad-warm:linear-gradient(95deg,#ff6a95,#ff3d7f 35%,#ffb020);--h-radius:18px;--h-shadow:0 1px 2px rgba(20,16,26,.04),0 8px 28px -12px rgba(20,16,26,.12)}

/* ---------- Base ---------- */
body{font-family:"Vazirmatn",Tahoma,sans-serif;color:var(--h-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body:not(#page-site-index):not(.pagelayout-login) #page{background:radial-gradient(1200px 380px at 50% -120px,rgba(255,61,127,.10),transparent 70%),var(--h-bg)}
h1,h2,h3,h4,.h1,.h2,.h3,.h4{font-weight:800;color:var(--h-ink)}
a{color:#c0265a}
a:hover{color:#8C1D40}
::selection{background:rgba(255,61,127,.22)}
*{scrollbar-width:thin;scrollbar-color:#d9cfe0 transparent}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d9cfe0;border-radius:10px;border:3px solid transparent;background-clip:content-box}
#region-main{animation:h-fade .45s ease both}
@keyframes h-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#region-main{animation:none}}

/* ---------- Navbar: dark glass with gradient hairline ---------- */
body .navbar.fixed-top{background:rgba(13,10,18,.92)!important;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:0!important;box-shadow:0 1px 0 rgba(255,255,255,.06),0 8px 30px -12px rgba(0,0,0,.5)!important}
body .navbar.fixed-top::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--h-grad-warm);opacity:.85}
body .navbar .primary-navigation .nav-link{color:rgba(255,255,255,.78)!important;font-weight:600;border-radius:10px;transition:color .2s,background .2s}
body .navbar .primary-navigation .nav-link:hover{color:#fff!important;background:rgba(255,255,255,.07)}
body .navbar .primary-navigation .nav-link.active{color:#fff!important;border-bottom-color:transparent!important;
  background:linear-gradient(rgba(255,61,127,.16),rgba(255,61,127,.16));box-shadow:inset 0 -2px 0 #ff3d7f}
body .navbar .usermenu .login a,body .navbar .usermenu .dropdown-toggle{color:#fff!important}
.dropdown-menu{border:1px solid var(--h-line);border-radius:14px;box-shadow:0 20px 50px -20px rgba(20,16,26,.35);padding:.4rem}
/* Keep Moodle's own item padding: it reserves the space for the ✓ of the selected item. */
.dropdown-item{border-radius:9px}
.dropdown-item:hover,.dropdown-item:focus{background:#fbeff4;color:#8C1D40}
.dropdown-item.active,.dropdown-item:active{background:var(--h-grad);color:#fff}

/* ---------- Page header & breadcrumb ---------- */
#page-header .page-header-headings h1,#page-header h1.h2{font-weight:900;font-size:clamp(1.5rem,2.4vw,2.1rem)}
.breadcrumb{background:transparent;padding:0;font-size:.85rem}
.breadcrumb-item a{color:var(--h-mute)}
.breadcrumb-item.active{color:var(--h-ink);font-weight:600}

/* ---------- Cards & blocks ---------- */
.card,.block,.course-content .course-section,#region-main-box .activity-header{border-radius:var(--h-radius)}
.card{border:1px solid var(--h-line)!important;box-shadow:var(--h-shadow);background:var(--h-card);transition:transform .2s,box-shadow .2s}
.card:hover{box-shadow:0 1px 2px rgba(20,16,26,.04),0 16px 40px -16px rgba(20,16,26,.2)}
.block .card-title,.block h5.card-title{font-weight:800;font-size:1.05rem}
.block .card-body{padding:1.15rem 1.25rem}

/* ---------- Buttons ---------- */
.btn{border-radius:11px;font-weight:700;transition:transform .15s,box-shadow .2s,background .2s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--h-grad)!important;border:0!important;color:#fff!important;box-shadow:0 8px 22px -10px rgba(255,61,127,.75)}
.btn-primary:hover,.btn-primary:focus{box-shadow:0 12px 28px -10px rgba(255,61,127,.95);filter:saturate(1.1)}
.btn-secondary{background:#fff!important;color:var(--h-ink)!important;border:1px solid var(--h-line)!important}
.btn-secondary:hover{background:#faf6fb!important;border-color:#e0d6e6!important}
.btn-outline-primary{color:#c0265a;border-color:rgba(192,38,90,.45)}
.btn-outline-primary:hover{background:var(--h-grad);border-color:transparent;color:#fff}
.btn-outline-secondary{border-color:var(--h-line);color:var(--h-text)}
.btn-outline-secondary:hover{background:#f3eef6;color:var(--h-ink);border-color:#e0d6e6}

/* ---------- Forms ---------- */
.form-control,.custom-select,.form-select{border-radius:11px;border-color:#e3dde8;transition:border-color .2s,box-shadow .2s}
.form-control:focus,.custom-select:focus,.form-select:focus{border-color:#ff7aa3;box-shadow:0 0 0 4px rgba(255,61,127,.14)}
.form-check-input:checked{background-color:#c0265a;border-color:#c0265a}

/* ---------- Badges, progress, tables, alerts ---------- */
.badge{border-radius:999px;font-weight:700;padding:.35em .75em}
.progress{background:#efe8f2;border-radius:999px;overflow:hidden}
.progress-bar,.progress .bar{background:var(--h-grad-warm)!important;border-radius:999px}
.generaltable,.table{--bs-table-bg:transparent}
.generaltable thead th,.table thead th{background:#faf7fb;color:var(--h-mute);font-weight:700;font-size:.85rem;border-bottom:1px solid var(--h-line)!important}
.generaltable tbody tr,.table tbody tr{transition:background .15s}
.generaltable tbody tr:hover,.table-hover tbody tr:hover{background:#fdf6f9}
.generaltable td,.generaltable th{border-color:var(--h-line)}
.alert{border-radius:14px;border:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}
.alert-info{background:#f0f5ff;color:#1e3a6b}
.alert-success{background:#ecfbf1;color:#14532d}
.alert-warning{background:#fff7e6;color:#7a4a00}
.alert-danger{background:#fff0f3;color:#8a1236}

/* ---------- Dashboard / My courses ---------- */
.dashboard-card-deck .dashboard-card,.course-card{overflow:hidden}
.dashboard-card .card-img,.dashboard-card .card-img-top{border-radius:var(--h-radius) var(--h-radius) 0 0;transition:transform .5s ease}
.dashboard-card:hover{transform:translateY(-4px)}
.dashboard-card:hover .card-img{transform:scale(1.04)}
.dashboard-card .coursename,.dashboard-card .multiline{font-weight:800;color:var(--h-ink)}
.dashboard-card .categoryname{color:var(--h-mute);font-size:.8rem}
.block_myoverview .progress{height:7px}
.block_timeline .list-group-item,.block_calendar_upcoming .event{border-color:var(--h-line)}
.block_mentees .card-body,.block_mentees ul{line-height:2.1}

/* ---------- Course page ---------- */
.course-content .course-section{background:#fff;border:1px solid var(--h-line)!important;box-shadow:var(--h-shadow);padding:1rem 1.25rem;margin-bottom:1.1rem}
.course-content .course-section .sectionname,.course-content .course-section h3.sectionname{font-weight:900;font-size:1.25rem}
.course-content .course-section .course-section-header{border-bottom:1px dashed var(--h-line);padding-bottom:.6rem;margin-bottom:.6rem}
.course-content .activity-item{border-radius:14px;transition:background .15s,box-shadow .15s;padding:.55rem .7rem}
.course-content .activity-item:hover{background:#fcf7fa;box-shadow:inset 0 0 0 1px #f3e3ea}
.activityiconcontainer{border-radius:12px!important}
.activity-name-area .instancename,.activityname a{font-weight:700}
.availabilityinfo,.section .availabilityinfo{background:#fbf8fd;border:1px dashed #e4d7ec;border-radius:12px;padding:.5rem .8rem;color:var(--h-mute)}
.course-content .course-section.hidden,.course-content .section .restrictionlist{opacity:.92}
[data-region="completion-info"] .btn,.completion-info .badge{border-radius:999px}
.completioninfo .badge.alert-success,.automatic-completion-conditions .badge.alert-success{background:#ecfbf1;color:#15803d}

/* Course index drawer */
.drawer,.drawer .drawerheader{background:#fff}
#courseindex .courseindex-section .courseindex-item{border-radius:10px}
#courseindex .courseindex-item.pageitem{background:var(--h-grad)!important;color:#fff}
#courseindex .courseindex-item.pageitem a{color:#fff!important}
#courseindex .courseindex-section-title{font-weight:800}

/* Activity pages */
.activity-header{background:#fff;border:1px solid var(--h-line);border-radius:var(--h-radius);padding:1rem 1.2rem;box-shadow:var(--h-shadow)}
.quizinfo,.submissionstatustable,.gradingsummary{background:#fff;border:1px solid var(--h-line);border-radius:var(--h-radius);padding:1rem;box-shadow:var(--h-shadow)}
.que .info{border-radius:14px;background:#fbf7fd;border-color:var(--h-line)}
.que .formulation{border-radius:14px;background:#fff8fb;border-color:#f6dbe6}
video,.resourcecontent video{border-radius:16px;box-shadow:0 20px 50px -20px rgba(20,16,26,.45);max-width:100%}

/* ---------- Footer: dark like the landing ---------- */
#page-footer{background:#0d0a12!important;color:rgba(255,255,255,.7);border-top:0!important;position:relative}
#page-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--h-grad-warm)}
#page-footer a{color:#ffb3c9}

/* ---------- Login & signup: dark, like the landing hero ---------- */
body.pagelayout-login{background:#06050a}
body.pagelayout-login #page,body.pagelayout-login #page-wrapper{background:transparent!important}
body.pagelayout-login::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(60% 50% at 50% 0%,rgba(255,61,127,.32),transparent 70%),radial-gradient(40% 40% at 90% 90%,rgba(139,92,246,.22),transparent 70%)}
body.pagelayout-login::after{content:"";position:fixed;left:-50%;right:-50%;bottom:-10%;height:60%;z-index:0;pointer-events:none;transform:perspective(900px) rotateX(70deg);
  transform-origin:bottom;background-image:linear-gradient(rgba(255,61,127,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,61,127,.2) 1px,transparent 1px);
  background-size:56px 56px;animation:h-floor 6s linear infinite;mask-image:linear-gradient(to top,#000,transparent 80%);-webkit-mask-image:linear-gradient(to top,#000,transparent 80%)}
@keyframes h-floor{to{background-position:0 56px}}
body.pagelayout-login #page-wrapper,body.pagelayout-login #page{position:relative;z-index:1}
body.pagelayout-login .login-container,body.pagelayout-login #region-main .card{background:rgba(255,255,255,.97)!important;border:0!important;border-radius:24px!important;
  border-top:0!important;box-shadow:0 0 0 1px rgba(255,255,255,.12),0 40px 100px -20px rgba(255,61,127,.45),0 30px 60px -30px rgba(0,0,0,.8)!important}
body.pagelayout-login .login-logo img{background:var(--h-grad)!important;border-radius:18px!important;padding:.8rem 1.2rem!important;
  box-shadow:0 14px 40px -12px rgba(255,61,127,.8)}
body.pagelayout-login .login-heading,body.pagelayout-login h2{font-weight:900;color:var(--h-ink)}
body.pagelayout-login .login-form .btn-primary{width:100%;padding:.75rem 1rem;font-size:1.05rem}
body.pagelayout-login .login-divider{border-color:var(--h-line)}
body.pagelayout-login .alert-info{background:linear-gradient(135deg,#fff0f5,#fff7ec);color:#8C1D40;border:1px solid #fbd5e2}
body.pagelayout-login #page-footer,body.pagelayout-login .login-languagemenu .btn{background:transparent!important}
body.pagelayout-login #page-footer{color:rgba(255,255,255,.55)}

/* ---------- HAMUP mentor dashboard & reports ---------- */
.path-local-hamupmentor .card .fs-2{font-weight:900;font-size:2.3rem!important}
.path-local-hamupmentor .card.text-center{border-top:0!important;position:relative;overflow:hidden}
.path-local-hamupmentor .card.text-center::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--h-grad-warm)}
.path-local-hamupmentor .nav-tabs{border-bottom:1px solid var(--h-line);gap:6px}
.path-local-hamupmentor .nav-tabs .nav-link{border:0;border-radius:10px 10px 0 0;color:var(--h-mute);font-weight:700}
.path-local-hamupmentor .nav-tabs .nav-link.active{color:#c0265a;box-shadow:inset 0 -3px 0 #ff3d7f;background:transparent}
.path-local-hamupmentor tr.table-warning>td{background:#fffaf0!important}
.path-local-hamupmentor .badge.bg-danger{background:#fff0f3!important;color:#b0244f!important;box-shadow:inset 0 0 0 1px #ffd0dc}
.path-local-hamupmentor .badge.bg-success{background:#ecfbf1!important;color:#15803d!important;box-shadow:inset 0 0 0 1px #bbf0cc}
.path-local-hamupmentor .badge.bg-warning{background:#fff7e6!important;color:#8a5a00!important}
.path-local-hamupmentor .badge.bg-info{background:#eef4ff!important;color:#1e40af!important}

/* Mobile niceties */
@media (max-width:767.98px){
  /* RTL dropdowns inside the page (timeline filters, sort menus…) were placed off-screen to the right by Popper:
     pin them under their button, growing towards the free side, and never wider than the screen. */
  #region-main .dropdown-menu.show,#block-region-content .dropdown-menu.show,.block .dropdown-menu.show{
    transform:none!important;top:100%!important;bottom:auto!important;inset-inline-start:0!important;inset-inline-end:auto!important;
    max-width:calc(100vw - 24px);min-width:11rem;z-index:1050}
  .dropdown-menu .dropdown-item{white-space:normal}
  .course-content .course-section{padding:.85rem .9rem}
  #page-header .page-header-headings h1{font-size:1.45rem}
}
