/* Glass material theme for Django admin pages (site-wide) */

/* Global page background */
body {
  background: radial-gradient(1200px circle at 20% 10%, rgba(236, 72, 153, 0.10), transparent 55%),
              radial-gradient(1000px circle at 80% 20%, rgba(244, 63, 94, 0.10), transparent 55%),
              linear-gradient(180deg, rgba(255, 255, 255, 0.50), rgba(255, 255, 255, 0.15));
}

/* Ensure all text has full opacity in admin */
body, body *, #content, #content *, .module, .module *, .form-row, .form-row *, label, input, textarea, select, p, h1, h2, h3, h4, h5, h6, span, div {
  opacity: 1 !important;
}

/* Header */
#header {
  background: linear-gradient(135deg, rgba(17, 24, 39, 0.65), rgba(17, 24, 39, 0.45)) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.18) !important;
}

/* Content wrapper */
#content,
.content {
  background: transparent !important;
}

/* Modules / cards */
.module,
#content-main .module,
.dashboard .module,
.app-blogpost.module,
.app-blogcategory.module,
.app-blogcomment.module {
  background: rgba(255, 255, 255, 0.70) !important;
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12) !important;
  overflow: hidden;
}

/* Form rows */
.form-row,
.aligned .form-row,
fieldset.module {
  border-color: rgba(226, 232, 240, 0.8) !important;
}

/* Stylish Breadcrumbs with Glassmorphism */
div.breadcrumbs {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.75) 100%) !important;
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 16px !important;
  margin: 16px 20px 20px 20px !important;
  padding: 14px 20px !important;
  color: #0f172a !important;
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08), 
              0 1px 3px rgba(15, 23, 42, 0.05),
              inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.3s ease !important;
}

div.breadcrumbs:hover {
  box-shadow: 0 6px 24px rgba(15, 23, 42, 0.12), 
              0 2px 6px rgba(15, 23, 42, 0.08),
              inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  transform: translateY(-1px) !important;
}

div.breadcrumbs a {
  color: #475569 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  position: relative !important;
  background: rgba(255, 255, 255, 0.4) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}

/* Breadcrumb icon support */
div.breadcrumbs .breadcrumb-icon {
  font-size: 14px !important;
  opacity: 0.8 !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
  margin-right: 4px !important;
}

div.breadcrumbs a:first-child:not([data-icon])::before {
  content: '🏠' !important;
  font-size: 14px !important;
  opacity: 0.7 !important;
  transition: all 0.2s ease !important;
  margin-right: 6px !important;
}

div.breadcrumbs a:not(:first-child)::before,
div.breadcrumbs a[data-icon]::before {
  content: '' !important;
}

div.breadcrumbs a:hover {
  color: #be123c !important;
  background: linear-gradient(135deg, rgba(190, 18, 60, 0.1) 0%, rgba(190, 18, 60, 0.05) 100%) !important;
  border-color: rgba(190, 18, 60, 0.2) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 8px rgba(190, 18, 60, 0.15) !important;
}

div.breadcrumbs a:hover::before {
  opacity: 1 !important;
  transform: scale(1.1) !important;
}

/* Breadcrumb separator */
div.breadcrumbs .breadcrumb-separator,
div.breadcrumbs::before {
  content: '›' !important;
  color: #94a3b8 !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  margin: 0 4px !important;
  opacity: 0.6 !important;
}

/* Current page (non-link) */
div.breadcrumbs .current,
div.breadcrumbs strong {
  color: #0f172a !important;
  font-weight: 700 !important;
  padding: 6px 12px !important;
  background: linear-gradient(135deg, rgba(190, 18, 60, 0.1) 0%, rgba(190, 18, 60, 0.05) 100%) !important;
  border-radius: 8px !important;
  border: 1px solid rgba(190, 18, 60, 0.2) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

div.breadcrumbs .current::before,
div.breadcrumbs strong::before {
  content: '📍' !important;
  font-size: 14px !important;
}

/* If current has an icon, don't show the default pin */
div.breadcrumbs .current .breadcrumb-icon ~ *::before,
div.breadcrumbs .current:has(.breadcrumb-icon)::before {
  content: '' !important;
}

/* Responsive breadcrumbs */
@media (max-width: 768px) {
  div.breadcrumbs {
    margin: 12px 12px 16px 12px !important;
    padding: 12px 16px !important;
    font-size: 12px !important;
    border-radius: 12px !important;
  }
  
  div.breadcrumbs a,
  div.breadcrumbs .current,
  div.breadcrumbs strong {
    padding: 4px 8px !important;
    font-size: 11px !important;
  }
}

/* Tables */
table {
  background: transparent !important;
}
thead th {
  background: rgba(255, 255, 255, 0.55) !important;
}
tbody tr:nth-child(odd) {
  background: rgba(255, 255, 255, 0.35) !important;
}
tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.20) !important;
}

/* Buttons */
.button,
input[type=submit],
input[type=button],
.submit-row input,
a.button {
  border-radius: 10px !important;
}

/* BlogPost change form: shadcn-like wrapper */
.bm-admin-page {
  max-width: 1200px;
  margin: 0 auto;
  padding: 16px 12px 28px;
}
.bm-admin-header.glass-panel {
  background: rgba(255, 255, 255, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.14) !important;
  backdrop-filter: blur(16px);
  padding: 16px 16px 14px;
}
.bm-admin-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  font-size: 13px;
  font-weight: 600;
  color: #334155;
  padding: 12px 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.75) 100%);
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08), 
              0 1px 3px rgba(15, 23, 42, 0.05),
              inset 0 1px 0 rgba(255, 255, 255, 0.9);
  margin-bottom: 16px;
}
.bm-admin-breadcrumb a {
  color: #475569;
  text-decoration: none;
  padding: 6px 12px;
  border-radius: 8px;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.4);
  border: 1px solid rgba(255, 255, 255, 0.3);
  font-weight: 600;
}
.bm-admin-breadcrumb a:hover {
  color: #be123c;
  background: linear-gradient(135deg, rgba(190, 18, 60, 0.1) 0%, rgba(190, 18, 60, 0.05) 100%);
  border-color: rgba(190, 18, 60, 0.2);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(190, 18, 60, 0.15);
  text-decoration: none;
}
.bm-admin-breadcrumb .sep {
  color: #94a3b8;
  font-size: 18px;
  font-weight: 300;
  opacity: 0.6;
  margin: 0 4px;
}
.bm-admin-breadcrumb .current {
  color: #0f172a;
  font-weight: 700;
  padding: 6px 12px;
  background: linear-gradient(135deg, rgba(190, 18, 60, 0.1) 0%, rgba(190, 18, 60, 0.05) 100%);
  border-radius: 8px;
  border: 1px solid rgba(190, 18, 60, 0.2);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.bm-admin-breadcrumb .current::before {
  content: '📍';
  font-size: 14px;
}
.bm-admin-title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  margin-top: 10px;
}
.bm-admin-title .kicker {
  color: #64748b;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.02em;
}
.bm-admin-title h1 {
  margin: 4px 0 0 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #0f172a !important;
}
.bm-admin-actions .button {
  background: rgba(255, 255, 255, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.65) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
  font-weight: 800 !important;
}
.bm-admin-body {
  margin-top: 14px;
}

/* Make fieldsets look like cards */
fieldset.module {
  background: rgba(255, 255, 255, 0.70) !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.10) !important;
}
fieldset.module h2,
fieldset.module .collapse-toggle {
  color: #0f172a !important;
}

/* Sticky submit row */
.submit-row {
  position: sticky;
  bottom: 10px;
  z-index: 20;
  background: rgba(255, 255, 255, 0.75) !important;
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.16) !important;
}


