:root {
   --primary-color: #0A479A;
   --bg-light: #f8fafc;
   --text-dark: #1e293b;
   --text-def: #252525;
   --text-misc: #64748b;
   --a-color: #1877f2;
}

body {
   font-family: 'Inter', sans-serif;
   background: #f2f2f2 url(/static/img/site/bgnd.png) top left repeat-x;
   color: var(--text-dark);
   display: flex;
   flex-direction: column;
   min-height: 100vh;
   font-size: 0.9rem;
}

a {
   text-decoration: none;
   color: var(--primary-color);
}

a:hover {
   color: var(--a-color);
}

h1 {
   font-size: 1.8rem;
}

h2 {
   font-size: 1.4rem;
   color: #1b855f;
}

h5 {
   font-size: 1.0rem;
   color: #073873;
}


/* HEADER & NAV */
.top-navbar {
   background-color: #ffffff;
   border-bottom: 1px solid #e2e8f0;
   position: fixed;width: 100%;
}
.date-info {
   font-size: 0.9rem;
   color: var(--text-misc);
   font-weight: 500;
}

.header-banner {
   background: #fff url('/static/img/site/head-banner2.jpg') top right no-repeat;
   border-radius: 12px;
   margin-top: 67px;
}

.logo-placeholder {
   margin-left: 10px;
}

.navbar {
   background-color: #ffffff;
   box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
}
.navbar-brand {
   font-weight: 700;
   color: var(--primary-color) !important;
}

main {
   flex: 1;
}

/* Finomított almenü stílus */
.dropdown-menu {
   border: 1px solid #e2e8f0;
   border-radius: 8px;
   box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05);
   margin-top: 0; /* Simább átmenet a hoverhez */
}
.dropdown-item:active {
   background-color: var(--primary-color);
}

/* BREADCRUMB */
.breadcrumb-box {
   background: #ffffff;
   border: 1px solid #e2e8f0;
   border-radius: 12px;
   padding: 0.5rem 1.5rem;
   box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
   font-size: 0.9rem;
}
.breadcrumb {
   margin-bottom: 0;
   align-items: center;
}
.breadcrumb-item + .breadcrumb-item::before {
   font-family: "bootstrap-icons";
   content: "\f285"; /* Jobbra mutató nyíl ikon */
   font-size: 0.75rem;
   color: #94a3b8;
   text-decoration: none;
}
.fb-link {
   transition: opacity 0.2s;
   text-decoration: none;
}

.breadcrumb-item a {
   text-decoration: none;
   color: var(--text-misc);
}
.fb-link:hover,
.breadcrumb-item a:hover {
   color: var(--a-color);
}


/* LIST */
.list-item {
   margin-bottom: 16px;
   border-bottom: 1px dotted #b5b5b5;
   display: inline-block;
   padding-bottom: 20px;
}

.item-date ul {
   padding-left: 0;
}

.item-date ul li {
   display: inline;
   color: var(--text-misc);
   font-size: 0.8rem;
}

.item-date a {
   color: #0e65cf;
}

.bu {
   color: var(--primary-color);
   padding: 0 10px;
}

.bc-holder {
   margin-top: 1rem !important;
}



/* HOVER EFFECT */
@media (min-width: 992px) {
   .navbar-nav .nav-item.dropdown:hover .dropdown-menu {
      display: block;
      animation: fadeIn 0.2s ease-in-out;
   }
}

@media (max-width: 992px) {
   /* .header-banner {
      display: none;
   } */

   .breadcrumb-box {
      margin-top: 50px;
   }

   .date-info {
      display: none !important;
   }

   .navbar {
      padding-bottom: 14px;
   }

   .bc-holder {
      /* margin-top: 1.4rem !important; */
      display: none;
   }
}

/* FADEIN */
@keyframes fadeIn {
   from { opacity: 0; transform: translateY(5px); }
   to { opacity: 1; transform: translateY(0); }
}



/* BOXES */
.content-box {
   background: #ffffff;
   border: 1px solid #e2e8f0;
   border-radius: 12px;
   padding: 2rem;
   box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
   margin-bottom: 1.5rem;
}

.teacher-group {
   text-align: center;
   font-size: 2rem;
   padding: 10px 0 30px 0;
   color: #315477;
   font-weight: bold;
   text-transform: uppercase;
}

.sidebar-box {
   background: #ffffff;
   border: 1px solid #e2e8f0;
   border-radius: 12px;
   padding: 1rem;
   box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
   margin-bottom: 1.5rem;
}

.sidebar-box h5 {
   font-weight: 600;
   border-bottom: 2px solid #f1f5f9;
   background-color: #3f6b97;
   color: #fff;
   padding: 6px 10px;
}


/* FOOTER */
footer {
   background-color: #0f172a;
   color: #94a3b8;
   padding: 2rem 0;
   margin-top: auto;
}

.footer-icons img {
   height: 55px;
   padding: 0 12px;
}

.blind-box {
   background-color: #000;
   padding: 10px;
}

.mnu-blind img {
   width: 45px;
   margin: 0 auto;
   display: block;
}


/* Sidebar calendar */

#c-tab2 p {
   margin-bottom: 0.2rem;
   padding-bottom: 0.2rem;
}

.c-title {
   text-align: center;
   font-weight: bold;
   color: #3f6b97;
}

.c-nav {
   text-align: center;
}

.c-nav .button {
   border: 0 none;
   color: #666666;
   font-size: 12px;
   font-weight: bold;
   height: 22px;
   line-height: 0;
   vertical-align: top;
   width: 30px;
}

/* BACK TO TOP */
#back-top {
   position: fixed;
   bottom: 50px;
   right: 30px;
   z-index: 5;
}

#back-top a:hover {
   color: #000;
}

#back-top span {
   width: 48px;
   height: 48px;
   display: block;
   margin-bottom: 7px;
   background: transparent url(/static/img/site/up.png) no-repeat center center;

   /* rounded corners */
   -webkit-border-radius: 15px;
   -moz-border-radius: 15px;
   border-radius: 15px;

   /* transition */
   -webkit-transition: 1s;
   -moz-transition: 1s;
   transition: 1s;


}
#back-top a:hover span {
   background-color: transparent;
}


/* COOKIE TABLE */
.cookie-table {
   margin: 0px auto;
   max-width: fit-content;
}

.cookie-button {
   margin-left: 10px;
}

.cookie-table tr:nth-child(1) td {
   padding: 4px;
   font-size: 14px;
}

.cookie-table-01 tr:nth-child(2) {
   border-bottom: 1px solid #081b46;
}

.cookie-table-02 tr:nth-child(1) {
   border-bottom: 1px solid #081b46;
}

.cookie-table td {
   font-size: 13px;
   line-height: 16px;
   padding-bottom: 10px;
}

.cookie-table-02 td {
   font-size: 14px;
   line-height: 16px;
   padding: 6px 4px;
}

.cookie-table-02 tr:nth-child(odd) {
   background-color: #f6f6f6;
}

/* PAGER */


div.pager span.plain {
   text-align: center;
   margin: 2px 3px;
   padding: 4px 10px;
   border: 1px solid #bebebe;
   color: #363636;
   font-weight: bold;
   background-color: #fff;
}

div.pager a {
   height: 15px;
   padding: 4px 10px;
   margin: 2px 3px;
   border: 1px solid #BCBCBC;
   text-decoration: none;
   color: #404040;
   font-weight: bold;
   background-color: #fff;
}

div.pager a:hover,
div span.plain.selected {
   border: 1px solid var(--text-dark);
   background-color: var(--a-color);
   color: #fff;
   font-weight: bold;
}


/* GALLERY */

.list-sublist {
   text-align: center;
   padding-left: 20px;
   margin-bottom: 20px;
   display: inline-block;
}

.list-sublist div {
   float: left;
   padding: 2px;
}

.list-sublist div img {
   margin: 0 10px 10px;
}

img.gallery-tn {
   padding: 2px;
   text-align: center;
   width: 102px;
}

/* Sidebar gallery */
.sidebar-gallery-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 12px;
   width: 100%;
}

.sidebar-gallery-item {
   display: block;
   width: 100%;
   aspect-ratio: 4 / 3;
   overflow: hidden;
   background-color: var(--bg-dark);
   border: 3px solid var(--border-color);
}

.sidebar-gallery-item:hover,
.sidebar-gallery-item:focus {
   border-color: var(--primary-color);
   background-color: #000066;
}

.sidebar-gallery-item .gallery-tn {
   display: block;
   width: 100%;
   height: 100%;
   max-width: none;
   object-fit: cover;
   background-color: #ffffff;
}

.lead-text,
.lead {
   text-align: justify;
}

.article-lead-image {
   width: 200px;
   margin-right: 10px;
}
