:root{
  --bg-top:#7ad8ff;
  --bg-mid:#3a86c2;
  --bg-main:#1a5f94;
  /* Ενιαίο φόντο στα blog άρθρα ώστε να μη φαίνεται "κομμένο" το gradient */
  --page-bg:#1a5f94;
  --accent:#45d6ff;
  --accent-soft:#92e8ff;
  --card-bg: rgba(9,25,53,0.92);
  --card-soft: rgba(9,35,70,0.85);
  --text-main:#ffffff;
}

*{box-sizing:border-box;}
html,body{height:100%;}
body{
  margin:0;
  font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--page-bg);
  color:var(--text-main);
}

a{color:inherit;}
a:hover{color:inherit; opacity:.95; text-decoration:none;}
/* Better link contrast inside blog */
.article-content a,
.section-card a{
  color: var(--accent-soft);
  text-decoration: underline;
  text-decoration-color: rgba(146,232,255,0.45);
  text-underline-offset: 3px;
}
.article-content a:hover,
.section-card a:hover{
  color: #ffffff;
  text-decoration-color: rgba(255,255,255,0.55);
}

/* Make post titles more readable */
.section-card h2 a{
  color: #ffffff;
  text-decoration: none;
}
.section-card h2 a:hover{
  color: var(--accent-soft);
}
.navbar{
  backdrop-filter: blur(10px);
  background: linear-gradient(to right, rgba(8, 33, 60, 0.90), rgba(8, 33, 60, 0.75));
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.nav-logo-tile{
  width:34px;
  height:34px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(146,232,255,0.7);
  box-shadow:0 6px 15px rgba(0,0,0,0.7),0 0 14px rgba(69,214,255,0.5);
  display:flex;
  align-items:center;
  justify-content:center;
  background: radial-gradient(circle at top left, #2a6fa4, #0b345a);
}

.nav-logo-tile img{width:100%;height:100%;object-fit:cover;display:block;}

.btn-nav-cta{
  border-radius:999px;
  padding:0.3rem 0.9rem;
  font-size:0.85rem;
  font-weight:600;
  background: var(--accent);
  color:#042138;
  border:none;
  box-shadow:0 0 15px rgba(69, 214, 255, 0.4);
}
.btn-nav-cta:hover{background: var(--accent-soft); color: var(--bs-btn-hover-color) !important;}

main{padding-top:4.8rem; padding-bottom:3rem;}

.section-card{
  background: var(--card-bg);
  border-radius: 1.5rem;
  padding: 1.6rem 1.2rem;
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 12px 30px rgba(0,0,0,0.55);
}

@media (min-width:768px){
  .section-card{padding:2rem 1.7rem;}
}

.badge-soft{
  font-size:0.75rem;
  padding:0.2rem 0.6rem;
  border-radius:999px;
  background: rgba(146,232,255,0.12);
  border: 1px solid rgba(146,232,255,0.5);
  color: var(--accent-soft);
}

.post-meta{font-size:0.85rem; opacity:.9;}
.post-excerpt{font-size:0.95rem; opacity:.95;}

.post-cover{
  width:100%;
  border-radius:1rem;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 12px 30px rgba(0,0,0,0.5);
}

.toc{
  background: rgba(9, 35, 70, 0.7);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  padding: 12px 12px;
}
.toc a{opacity:.95;}
.toc a:hover{opacity:1;}
.toc ul{margin:0; padding-left:1.1rem;}
.toc li{margin:0.25rem 0;}

.article-content h1,.article-content h2,.article-content h3{
  margin-top:1.1rem;
}
.article-content p{line-height:1.6;}
.article-content pre{
  background: rgba(5, 20, 45, 0.75);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  padding: 12px 12px;
  overflow:auto;
}
.article-content code{
  background: rgba(255,255,255,0.10);
  border-radius: 8px;
  padding: 0.12rem 0.35rem;
}
.article-content blockquote{
  margin: 0.9rem 0;
  padding: 0.6rem 0.9rem;
  border-left: 3px solid rgba(146,232,255,0.7);
  background: rgba(9,35,70,0.55);
  border-radius: 12px;
}

.footer{
  font-size:0.78rem;
  opacity:0.85;
  padding: 0.9rem 0 1.6rem;
  text-align:center;
}

.small-muted{opacity:.88; font-size:0.85rem;}
.tag{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  font-size:0.78rem;
  padding:.18rem .55rem;
  border-radius:999px;
  background: rgba(69,214,255,0.10);
  border:1px solid rgba(255,255,255,0.15);
  color: var(--accent-soft);
}
/* ===== Admin Markdown toolbar + preview ===== */
.md-toolbar{
  background: rgba(9, 35, 70, 0.55);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  padding: 10px 10px;
}

.md-toolbar .btn{
  border-radius: 999px;
}

.md-preview-wrap{
  background: rgba(9, 35, 70, 0.55);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  padding: 12px 12px;
}

/* In-body images */
.article-content img{
  max-width: 100%;
  height: auto;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 12px 30px rgba(0,0,0,0.5);
  margin: 0.8rem 0;
}
/* ===== FIX NAVBAR TEXT COLOR ===== */

.navbar,
.navbar * {
  color: #ffffff !important;
}

.navbar .nav-link {
  color: #ffffff !important;
  opacity: 0.9;
}

.navbar .nav-link:hover {
  opacity: 1;
}

.navbar-brand span {
  color: #ffffff !important;
}

.navbar .btn-nav-cta {
  color: #042138 !important;
}