/* Local Coppermine restyle — matches Selena-Fan.com redesign */

:root {
  --sf-bg: #f5f4f2;
  --sf-surface: #ffffff;
  --sf-ink: #333333;
  --sf-muted: #6a6a6a;
  --sf-teal: #55b0cc;
  --sf-rose: #d73660;
  --sf-olive: #52762e;
  --sf-line: #d2d2d1;
  --sf-pink: #c494a4;
  --sf-soft: #ecebe9;
}

html {
  background: var(--sf-bg);
}

body {
  margin: 0 !important;
  padding: 0 0 48px !important;
  background: var(--sf-bg) url("/assets/img/selenabg.gif") repeat-x top center !important;
  background-color: var(--sf-bg) !important;
  color: var(--sf-ink) !important;
  font-family: "Source Sans 3", Verdana, Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* Site chrome for gallery archive pages */
.sf-gallery-topbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 18px;
  max-width: 1080px;
  margin: 0 auto 18px;
  padding: 16px 16px 12px;
  border-bottom: 3px solid var(--sf-olive);
  background: rgba(255, 255, 255, 0.86);
  position: sticky;
  top: 0;
  z-index: 50;
  box-sizing: border-box;
}

.sf-gallery-brand {
  font-family: "Nunito", "Trebuchet MS", sans-serif;
  font-weight: 800;
  font-size: 1.35rem;
  color: var(--sf-teal) !important;
  text-decoration: none !important;
}

.sf-gallery-brand span {
  color: var(--sf-rose);
}

.sf-gallery-brand:hover {
  text-decoration: none !important;
}

.sf-gallery-links {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
}

.sf-gallery-links a {
  font-family: "Nunito", "Trebuchet MS", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--sf-ink) !important;
  text-decoration: none !important;
  padding: 4px 2px;
  border-bottom: 2px solid transparent;
}

.sf-gallery-links a:hover {
  color: var(--sf-rose) !important;
  border-bottom-color: var(--sf-teal);
  text-decoration: none !important;
}

a {
  color: var(--sf-olive) !important;
  text-decoration: none;
}

a:hover {
  color: var(--sf-rose) !important;
  text-decoration: line-through;
}

b,
strong {
  color: var(--sf-rose);
}

/* Layout tables from Coppermine export */
table {
  border-collapse: collapse;
}

table[width="995"],
table[width="778"],
table[width="674"],
table[align="center"] {
  max-width: 1080px !important;
  width: 100% !important;
}

.maintable {
  width: 100% !important;
  max-width: 920px;
  margin: 16px auto !important;
  background: var(--sf-surface);
  border: 1px solid var(--sf-line) !important;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
}

.tableh1,
.tableh2 {
  background: var(--sf-soft) !important;
  color: var(--sf-rose) !important;
  font-family: "Nunito", "Trebuchet MS", sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 10px 12px !important;
  border-bottom: 1px solid var(--sf-line) !important;
  text-align: left !important;
}

.tableb,
.tableb_alternate,
.tablef {
  background: var(--sf-surface) !important;
  color: var(--sf-ink) !important;
  padding: 8px 10px !important;
  border-bottom: 1px solid var(--sf-line);
}

.catrow,
.catrow_noalb,
.album_stat,
.alblink,
.catlink {
  color: var(--sf-ink) !important;
}

.catrow_noalb,
.catrow {
  padding: 12px !important;
  background: var(--sf-surface) !important;
  border-bottom: 1px solid var(--sf-line);
}

.catlink a,
.alblink a {
  font-family: "Nunito", "Trebuchet MS", sans-serif;
  font-weight: 700;
  color: var(--sf-teal) !important;
}

.catlink a:hover,
.alblink a:hover {
  color: var(--sf-rose) !important;
  text-decoration: none !important;
}

.statlink {
  color: var(--sf-muted) !important;
  font-size: 0.85rem;
}

/* Thumbnails grid */
.thumbnails {
  padding: 14px 8px !important;
  background: var(--sf-surface) !important;
  vertical-align: top !important;
}

.thumbnails img,
td.thumbnails img,
.image,
img.image {
  border: 1px solid var(--sf-pink) !important;
  border-radius: 6px;
  padding: 2px;
  background: #fff;
  max-width: 100%;
  height: auto;
}

.thumbnails a:hover img {
  border-color: var(--sf-rose) !important;
}

.thumb_title,
.thumb_caption,
.thumb_num_comments {
  display: block;
  font-size: 0.78rem;
  color: var(--sf-muted);
  margin-top: 4px;
  text-align: center;
}

.thumb_title {
  color: var(--sf-ink);
  font-weight: 700;
  font-family: "Nunito", "Trebuchet MS", sans-serif;
}

/* Navigation strip inside old templates */
.navigation,
.navmenu,
td.navmenu {
  background: transparent !important;
  color: var(--sf-muted) !important;
  font-size: 0.85rem !important;
  padding: 8px !important;
}

.navigation a,
.navmenu a {
  color: var(--sf-olive) !important;
}

/* Image viewer */
.display_media,
.imageborder,
td.display_media {
  background: var(--sf-surface) !important;
  text-align: center;
  padding: 16px !important;
}

.display_media img,
.imageborder img {
  max-width: min(100%, 900px);
  height: auto;
  border: 1px solid var(--sf-pink);
  border-radius: 6px;
  padding: 3px;
  background: #fff;
}

.pic_title,
.pic_caption {
  color: var(--sf-ink) !important;
  font-family: "Nunito", "Trebuchet MS", sans-serif;
}

.footertext,
.footer {
  color: var(--sf-muted) !important;
  font-size: 0.8rem;
  text-align: center;
  padding: 16px;
}

/* Soften leftover dark inline styles */
.style4,
.style5 {
  color: var(--sf-muted) !important;
}
.style6,
.style12,
.style14 {
  color: var(--sf-gold, #c59914) !important;
}

input,
select,
textarea,
button {
  font-family: inherit;
  border: 1px solid var(--sf-olive);
  border-radius: 6px;
  padding: 6px 8px;
  background: #fff;
  color: var(--sf-ink);
}

/* Mobile */
@media (max-width: 800px) {
  .sf-gallery-topbar {
    position: static;
    flex-direction: column;
    align-items: flex-start;
  }

  .maintable,
  table[width="995"],
  table[width="778"],
  table[width="674"] {
    width: 96% !important;
  }

  .thumbnails {
    display: block !important;
    width: 50% !important;
    float: left;
    box-sizing: border-box;
  }

  .maintable tr {
    display: block;
  }

  .maintable tr:after {
    content: "";
    display: table;
    clear: both;
  }
}
