/* Home of the Rainbowfish — shared stylesheet (first draft) */
@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Source+Sans+3:wght@400;600&display=swap');

:root{
  --bg-main:#FFFFFF; --color-heading:#000000; --color-text:#111111;
  --color-link:#002B66; --color-link-hover:#0056B3; --border-muted:#E2E8F0;
  --muted:#64748B;
  --font-heading:'Merriweather',Georgia,serif;
  --font-body:'Source Sans 3',Arial,sans-serif;
}
*{box-sizing:border-box}
body{background:var(--bg-main);color:var(--color-text);font-family:var(--font-body);
  line-height:1.7;margin:0;padding:0}
a{color:var(--color-link);text-decoration:underline}
a:hover{color:var(--color-link-hover)}

.site-banner{background:#010101;text-align:center;padding:0}
.banner-halves{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap}
.banner-half{display:block}
.banner-half img{display:block;max-width:100%;height:auto}
@media (max-width:700px){
  .banner-halves{flex-direction:column}
  .banner-half{width:100%}
}

.layout{display:flex;gap:32px;max-width:1140px;margin:0 auto;padding:20px}
.side-menu{flex:0 0 220px}
.menu{list-style:none;margin:0;padding:0;border-top:2px solid var(--color-heading)}
.menu li{border-bottom:1px solid var(--border-muted)}
.menu li a{display:block;padding:9px 8px;text-decoration:none;font-weight:600;
  font-size:.95rem}
.menu li.active a{color:var(--color-heading);border-left:3px solid var(--color-link);
  padding-left:10px}
.menu li a:hover{background:#F1F5F9}

.content-wrapper{flex:1;min-width:0;max-width:820px}
.breadcrumbs{font-size:.9rem;color:var(--muted);margin-bottom:18px}
.breadcrumbs a{color:var(--color-link);text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}

h1{font-family:var(--font-heading);color:var(--color-heading);font-weight:700;
  font-size:2.2rem;line-height:1.2;margin:0 0 18px}
h2,h3{font-family:var(--font-heading);color:var(--color-heading);font-weight:700;
  margin-top:34px;border-bottom:1px solid var(--border-muted);padding-bottom:6px}
h3{font-size:1.15rem;border-bottom:none;margin-top:22px}
p{margin:0 0 18px;font-size:1.05rem}
.author-citation{color:#4A5568;font-size:1.05rem;margin-top:-8px}
.muted{color:var(--muted)}
.draft-note{background:#FFF7ED;border:1px solid #FED7AA;color:#9A3412;
  padding:8px 12px;border-radius:4px;font-size:.9rem}

.scientific-name{font-style:italic;font-family:inherit;font-size:inherit;font-weight:inherit}
.book-list{margin:0 0 18px 1.6em;padding:0}
.book-list li{margin:0 0 8px;font-size:1.05rem}
.common-name{color:#334155;font-size:1.05rem;font-weight:600;margin:-6px 0 14px}
.synonymy{list-style:none;padding-left:0;color:#475569;font-size:.95rem;margin:0 0 18px}
.synonymy li{padding:1px 0}
.references{list-style:none;padding-left:0;color:#475569;font-size:.95rem;margin:0 0 18px}
.references li{padding:2px 0}
.compare-table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:.95rem}
.compare-table caption{font-family:var(--font-heading);font-weight:700;text-align:left;
  padding:0 0 8px;caption-side:top}
.compare-table th,.compare-table td{border:1px solid var(--border-muted);padding:6px 10px;text-align:left}
.compare-table thead th{background:#F8FAFC;font-weight:700}
.divider-hero{text-align:center;margin-bottom:6px}
.divider-hero .drop{max-width:320px;height:auto;display:block;margin:0 auto 2px}
.divider-hero .rf{font-family:var(--font-heading);color:var(--color-link);font-size:1.7rem;display:block}
.divider-hero h1{border:none;margin:2px 0 12px}
.section-toc{line-height:1.85}
.page-image{border:1px solid var(--border-muted);margin:14px 0;background:#fff}
.page-image img{max-width:100%;height:auto;display:block;margin:0 auto}
.doc-name{font-size:1.1rem;margin:0 0 18px;color:#334155}
.justify p{text-align:justify}
.contributors{line-height:1.6}
.section-nav{display:flex;justify-content:space-between;gap:16px;margin-top:36px;padding-top:14px;border-top:1px solid var(--border-muted);font-weight:600}
a.doi{font-size:.9rem;word-break:break-all}

.image-block{background:#F8FAFC;border:1px solid var(--border-muted);border-radius:4px;
  padding:10px;margin:22px 0;text-align:center}
.image-block img{max-width:100%;height:auto;display:block;margin:0 auto}
.image-caption{font-size:.9rem;color:var(--muted);font-style:italic;margin-top:8px}

.parameter-table{width:100%;border-collapse:collapse;margin:22px 0}
.parameter-table td{padding:12px 10px;border-bottom:1px solid var(--border-muted);
  vertical-align:top}
.parameter-table tr td:first-child{font-weight:600;color:#334155;width:32%}

.contents-list,.species-list{list-style:none;padding-left:0}
.contents-list li{padding:10px 0;border-bottom:1px solid var(--border-muted)}
.species-list ul{list-style:none}
.species-list>li{margin:8px 0;font-weight:600}
.species-list ul li{font-weight:400;padding:2px 0}

.site-footer{max-width:1140px;margin:0 auto;padding:24px 20px;color:var(--muted);
  font-size:.85rem;border-top:1px solid var(--border-muted)}

@media(max-width:760px){
  .layout{flex-direction:column;gap:16px}
  .side-menu{flex:none}
}
