:root {
  --brand-color: #E30b5d;
  --brand-color-dark: #B43757; 
}

body {
  position: relative;
  z-index: 0;
}

body::before {
  content: '';
  position: fixed;
  inset: -20px;
  background-image: url('/static/artvault/0.png');
  background-size: cover;
  background-position: center;
  filter: blur(2px);
  opacity: 0.8;      /* control image opacity here */
  z-index: -2;
}

body::after {
  content: '';
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.1);   /* control dark overlay here */
  z-index: -1;
}



main {
  position: relative;
  z-index: 1;  /* ensures content sits above the background */
}

a {
  color: var(--brand-color);
  transition: color 0.2s ease;
}

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

.article-title {
  color: var(--brand-color);
  text-decoration: none;
}

.article-title:hover {
  color: var(--brand-color-dark);
}

*{
    font-family: "Poppins"
}

/* Navbar Links */
.navbar {
  background-color: var(--brand-color) !important;
}

.navbar .navbar-brand,
.navbar .nav-link {
  color: #ffffff !important;
  transition: opacity 0.2s ease;
}

.navbar .nav-link:hover {
  opacity: 0.8;
}
.btn-primary {
  background-color: var(--brand-color);
  border-color: var(--brand-color);
}

.btn-primary:hover {
  background-color: var(--brand-color-dark);
  border-color: var(--brand-color-dark);
}
.links a {
  margin-left: 16px;
  text-decoration: none;
  color: inherit;
  opacity: 0.75;
}

.form {
  display: grid;
  gap: 10px;
  max-width: 520px;
  margin-top: 18px;
}

.cta-btn, 
input,
textarea,
select,
button {
  font: inherit;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #ddd;
}

.cta-btn {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.5rem 1.5rem;
    background-color: var(--brand-color);
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    transition: background-color 0.3s ease;
}

.cta-btn:hover{
  transform: scale(1.08);
  color: #fff;
}


button {
  cursor: pointer;
}


/* Gallery */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;

    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem 4rem;
}

.gallery-grid img {
    width: 100%;
    height: 300px;      /* force consistent height */
    object-fit: cover;  /* crop nicely instead of stretching */
    display: block;
}

.art-card  {
    display: block;
    text-decoration: none;
    color: inherit;

    border: 1px solid rgba(255,255,255,0.08); 
    border-radius: 8px;
    padding: 12px;
    background: #eceaea;

    transition: transform 0.25s ease, border-color 0.25s ease;
}

.art-card:hover {
    transform: translateY(-4px);
    border-color: #3a3a40;  /* slight glow effect */
}

/* Container for the card */
.art-card-detail {
    display: flex;
    flex-direction: row;
    gap: 2rem;
    max-width: 900px;
    margin: 2rem auto;
    padding: 1.5rem;
    background-color: #fdfdfd;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
    align-items: center;
}

/* Image section */
.art-card-image img {
    width: 480px;       
    height: auto;
    border-radius: 10px;
    object-fit: cover;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}

/* Info section */
.art-card-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.art-card-info h1 {
    font-size: 1.8rem;
    color: var(--brand-color); 
    margin: 0;
}

.art-card-info .muted {
    color: #666;
    font-size: 0.9rem;
}

.art-card-info .description {
    font-size: 1rem;
    line-height: 1.5;
    color: #333;
}

/* Button styling */
.art-card-info .btn {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.5rem 1.5rem;
    background-color: #222;
    color: var(--brand-color); 
    text-decoration: none;
    border-radius: 6px;
    transition: background-color 0.3s ease;
}

.art-card-info .btn:hover {
    background-color: #555;
}

/* Add smooth transition to the image */
.art-card-image img {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Zoom effect on hover */
.art-card-image img:hover {
    transform: scale(1.05);   /* increase size by 5% */
    box-shadow: 0 10px 25px rgba(0,0,0,0.25); /* optional, more shadow on hover */
}

/* Responsive: stack image and details on small screens */
@media (max-width: 700px) {
    .art-card-detail {
        flex-direction: column;
        align-items: center;
    }

    .art-card-image img {
        width: 80%;
    }

    .art-card-info {
        text-align: center;
    }
}

/* Contacts */
.links_grid{
    display: flex; 
    align-items: flex-start; 
    gap: 2rem
    
}

a{
  text-decoration: none;
}

/* Blog post container */
.blog-section {
    border-left: 4px solid var(--brand-color);    /* light gray border */
    border-radius: 10px;          /* rounded corners */
    padding: 1.5rem;              /* spacing inside */
    box-shadow: 0 4px 15px rgba(0,0,0,0.08); /* subtle shadow for depth */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background-color: #fff;       /* make it stand out from the background */
}

/* Optional hover effect */
.blog-section:hover {
    transform: translateY(-3px);  /* lift effect */
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

/* Article image */
.article-img {
    border: 2px solid #ddd;       /* subtle border around profile pic */
}

/* Article title link */
.article-title {
    color: var(--brand-color);               /* blue link color */
    text-decoration: none;
    transition: color 0.2s ease;
}

.article-title:hover {
    color: var(--brand-color);               /* darker blue on hover */
}

.blog-section {
    border-left: 4px solid var(--brand-color); /* colored stripe for accent */
    padding-left: 1.5rem;           /* adjust padding to compensate */
}


/* Dark Mode Features */
/* Custom Button Colors - Dark Mode */
[data-bs-theme="dark"] .btn-outline-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-border-color: #8aadc8;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #8aadc8;
  --bs-btn-hover-border-color: #9fbdd4;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #9fbdd4;
  --bs-btn-active-border-color: #b4cde0;
}

[data-bs-theme="dark"] .btn-outline-secondary {
  --bs-btn-color: #ffffff;
  --bs-btn-border-color: #8a939b;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #b8bfc6;
  --bs-btn-hover-border-color: #adb5bd;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #adb5bd;
  --bs-btn-active-border-color: #a2aab2;
}

[data-bs-theme="dark"] .btn-outline-danger {
  --bs-btn-color: #d89090;
  --bs-btn-border-color: #d89090;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #d89090;
  --bs-btn-hover-border-color: #e0a8a8;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #e0a8a8;
  --bs-btn-active-border-color: #e8bcbc;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .account-heading {
    font-size: 2rem;
  }

  .article-img {
    height: 3rem;
    width: 3rem;
  }
}


[data-bs-theme="dark"] {
  --color-bg-body: #1a1a1a;
  --color-bg-content: #2d2d2d;
  --color-text-primary: #e0e0e0;
  --color-text-heading: #f0f0f0;
  --color-border: #404040;
  --color-border-light: #4a4a4a;
}

[data-bs-theme="dark"] .content-section {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-bs-theme="dark"] article.content-section:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

/* Custom Modal Colors */
.modal-header.bg-success {
  background-color: #4a7c5d !important;
}

.modal-header.bg-danger {
  background-color: #a85b5b !important;
}

/* Ensure modal header text stays white in both themes */
.modal-header.bg-success .modal-title,
.modal-header.bg-danger .modal-title {
  color: #ffffff !important;
}

/* Dark mode - Navbar button fixes */

[data-bs-theme="dark"] .navbar .nav-link,
.navbar .nav-link {
  background-color: transparent !important;
  color: #000;
  border: none !important;
}

[data-bs-theme="dark"] .navbar .nav-link:hover {
  background-color: rgba(255, 255, 255, 0.15) !important;
}

/* Dark mode - Art card background fix */
/* This ensures the background only changes when dark mode is active */
[data-bs-theme="dark"] .blog-article-panel {
    /* Dark, semi-transparent background */
    background-color: rgba(0, 0, 0, 0.45); 
    
    /* Blurs the background image directly behind the text */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); /* For Safari compatibility */
    
    /* Adds breathing room around the text */
    padding: 2rem; 
    
    /* Smooth, rounded corners */
    border-radius: 12px; 
    
    /* Optional: A very subtle border to define the edge of the "glass" */
    border: 1px solid rgba(255, 255, 255, 0.08);
}

[data-bs-theme="dark"] .art-card {
  background: #2d2d2d;
  border-color: rgba(255, 255, 255, 0.1);
  color: #e0e0e0;
}

[data-bs-theme="dark"] .art-card:hover {
  border-color: #5a5a60;
  color: var(--brand-color); 
}

[data-bs-theme="dark"] .blog-section {
  background-color: #2d2d2d;
  color: #e0e0e0;
}

