*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#edf2ee;color:#273631;font:15px/1.58 "Segoe UI",Arial,sans-serif}.site-layout{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:#173d38;color:#e7efea;padding:20px 14px 16px;display:flex;flex-direction:column}.site-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:20px;font-weight:700;letter-spacing:.01em;padding:1px 7px 18px;border-bottom:1px solid #ffffff27}.site-brand:hover{text-decoration:none}.brand-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#cfdfd0;color:#173d38;font-size:25px}.nav-group{padding:14px 0 4px}.nav-group h2{font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:.12em;color:#a9c5b7;margin:0 8px 6px}.nav-group ul{list-style:none;padding:0;margin:0}.nav-group a{display:block;color:#e6eee8;border-radius:5px;padding:5px 8px;font-size:13.5px;line-height:1.35}.nav-group a:hover,.nav-group a:focus{background:#ffffff19;color:#fff;text-decoration:none}.sidebar-foot{margin-top:auto;border-top:1px solid #ffffff27;padding:12px 8px 0;color:#a9c5b7;font-size:11px}.main-column{min-width:0;display:flex;flex-direction:column}.topline{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,42px);background:#fff;border-bottom:1px solid #dfe7e0;color:#708078;font-size:12px;letter-spacing:.03em}.main-content{width:min(1200px,100%);margin:0 auto;padding:26px clamp(18px,3vw,42px) 40px;flex:1}.page-heading{display:flex;align-items:center;gap:20px;margin:0 0 18px;min-height:52px}.page-heading h1{font-size:clamp(23px,3vw,32px);line-height:1.2;letter-spacing:-.025em;color:#213f37;margin:0;font-weight:650}.page-lead-image{width:112px;height:70px;object-fit:cover;border-radius:4px;flex:none}.content-surface{background:#fff;border:1px solid #dce5de;border-radius:5px;padding:clamp(16px,2.3vw,28px);box-shadow:0 2px 8px #2342380a;min-height:120px}.page-footer{border-top:1px solid #dfe7e0;padding:12px clamp(18px,3vw,42px);background:#fff;color:#748078;font-size:11px}.legacy-content{max-width:100%;overflow-wrap:anywhere}.legacy-content img{max-width:100%;height:auto;vertical-align:middle}.legacy-content table{max-width:100%;border-collapse:collapse}.legacy-content td,.legacy-content th{padding:.35rem}.legacy-content table:has(a[name]){border-top:2px solid #ccd9d0;margin-top:1.2rem;padding-top:.4rem}.legacy-content a:empty{display:none}.legacy-content p{margin:.75rem 0}.legacy-content .bb-medium{font-size:1.1em}.legacy-content a,.entry-card a{color:#286b5a;text-underline-offset:2px}.legacy-content a:hover,.entry-card a:hover{color:#163f38}.legacy-content pre{white-space:pre-wrap;overflow:auto}.legacy-content iframe{display:none}.legacy-content h1,.legacy-content h2,.legacy-content h3{line-height:1.27;color:#25483d}.legacy-content h1{font-size:1.6rem}.legacy-content h2{font-size:1.35rem}.legacy-content hr{border:0;border-top:1px solid #dfe8e2;margin:20px 0}.entry-card{padding:15px 0;border-bottom:1px solid #e6ece7}.entry-card:first-child{padding-top:0}.entry-card:last-child{border-bottom:0}.entry-card h2{font-size:18px;font-weight:650;line-height:1.35;margin:0 0 4px}.entry-card time,.article-body time{display:block;color:#77847c;font-size:12px;margin:0 0 8px}.article-body{margin:0 0 22px}.article-body:last-child{margin-bottom:0}.article-body .legacy-content{overflow-x:auto}.publication-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.publication-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce5de;border-radius:8px;background:#fff;color:#273631;box-shadow:0 3px 12px #193d3810;transition:transform .18s ease,box-shadow .18s ease}.publication-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #193d3825;text-decoration:none}.publication-card-image{position:relative;display:block;height:205px;overflow:hidden;background:#27483e}.publication-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.publication-card-image img:nth-of-type(2){clip-path:polygon(60% 0,100% 0,100% 100%,38% 100%);filter:saturate(.92);}.publication-card-image--collage img:nth-of-type(1){inset:0 auto auto 0;width:56%;height:56%;clip-path:none}.publication-card-image--collage img:nth-of-type(2){inset:0 0 auto auto;width:43%;height:56%;clip-path:none}.publication-card-image--collage img:nth-of-type(3){inset:auto auto 0 0;width:44%;height:43%;clip-path:none}.publication-card-image--collage img:nth-of-type(4){inset:auto 0 0 auto;width:55%;height:43%;clip-path:none}.publication-card:hover .publication-card-image img{transform:scale(1.035)}.publication-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,#102a2300 28%,#102a2340 60%,#102a23d9 100%);pointer-events:none}.publication-card-image strong{position:absolute;left:18px;right:18px;bottom:15px;color:#fff;font-size:22px;line-height:1.2;font-weight:650;text-shadow:0 1px 8px #0009}.publication-card-copy{display:flex;flex-direction:column;gap:12px;flex:1;padding:14px 18px 16px}.publication-card-description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:13px;line-height:1.5;color:#57655d}.publication-card-description p{margin:0}.publication-card-copy small{display:flex;justify-content:space-between;margin-top:auto;padding-top:10px;border-top:1px solid #e8eee9;color:#68766e;font-size:12px}.article-index{font-size:14px;line-height:1.4}.article-index p{margin:.25rem 0}.article-index .article-index-intro{margin:0 0 7px;font-weight:600;color:#52665b}.article-quickrefs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 16px;padding:10px 12px;border:1px solid #dce6de;border-radius:6px;background:#f5f8f5}.article-quickrefs a{display:inline-flex;padding:5px 10px;border-radius:999px;background:#fff;border:1px solid #dce5de;color:#285c4d;font-size:12px;font-weight:600;text-decoration:none}.article-quickrefs a:hover{background:#e6f0e9}.article-index p.article-index-section{scroll-margin-top:14px;margin:17px 0 5px;padding-bottom:5px;border-bottom:1px solid #dfe7e0;font-size:16px;line-height:1.25;color:#24483d}.article-index table{width:100%;max-width:100%;border-collapse:collapse;margin:4px 0 12px;line-height:1.3}.article-index td,.article-index th{padding:3px 8px;vertical-align:top}.article-index td p,.article-index th p{margin:0}.article-index table tr:nth-child(even){background:#f7f9f7}.article-index a{color:#286b5a;text-underline-offset:2px}.category-section{margin-bottom:26px}.category-section>h2,.content-surface>section>h2{font-size:20px;color:#27473c;margin:8px 0}.category-description{margin:0 0 12px}.welcome-block{display:flow-root}.welcome-block img{float:left;width:175px;max-width:36%;height:auto;margin:0 16px 10px 0;border-radius:3px}.welcome-block table{width:100%}.welcome-block td{padding:0!important}.family-break{margin:18px 0!important}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:12px;margin:12px 0 26px}.gallery-thumb{display:flex;flex-direction:column;gap:6px;padding:7px;border:1px solid #e0e7e1;border-radius:4px;color:#2e5143;background:#fbfcfb}.gallery-thumb:hover{background:#f1f6f1;text-decoration:none}.gallery-thumb img{width:100%;height:116px;object-fit:cover}.gallery-thumb span{font-size:12px}.gallery-thumb small{font-size:11px;color:#748078}.album-card{min-height:180px}.album-card-empty{justify-content:center;text-align:center}.gallery-large img{max-height:68vh;object-fit:contain}.photo-overlay{position:fixed;inset:0;z-index:1000;background:#101b18d9;display:grid;place-items:center;padding:22px}.photo-overlay[hidden]{display:none}.photo-dialog{position:relative;width:min(920px,95vw);max-height:92vh;overflow:auto;background:white;border-radius:5px;padding:24px;box-shadow:0 15px 50px #0006}.photo-close{position:sticky;top:0;float:right;border:0;border-radius:4px;background:#173d38;color:white;font-size:24px;line-height:1;width:36px;height:36px;cursor:pointer;z-index:2}.photo-dialog-content{clear:both;display:grid;place-items:center;min-height:100px}.photo-dialog-content img{max-width:100%;max-height:80vh;object-fit:contain}.photo-dialog-content .content-surface{border:0;box-shadow:none;padding:4px;width:100%}.dialog-open{overflow:hidden}.gallery-large{margin:0}.gallery-large figcaption{margin:10px 0}.credited-figure{float:right;width:min(42%,420px);margin:0 0 18px 22px;padding:7px;border:1px solid #dce5de;border-radius:5px;background:#fff}.credited-gallery-column{float:right;width:min(34%,350px);margin:0 0 14px 20px}.credited-gallery-column .credited-figure{float:none;width:100%;max-width:none;margin:0 0 10px}.credited-figure img{display:block;width:100%;height:auto;border-radius:3px}.credited-figure figcaption{padding:5px 2px 1px;color:#68766e;font-size:12px;line-height:1.45}.credited-figure a{color:#286b5a}.page-heading:has(.page-lead-image){border-bottom:1px solid #dde6df;padding-bottom:14px}.page-heading .page-lead-image{order:2;margin-left:auto;width:160px;height:82px}.page-heading .page-lead-image+h1{order:1}@media(max-width:850px){.site-layout{grid-template-columns:208px minmax(0,1fr)}.sidebar{padding-inline:10px}.main-content{padding:20px 16px 30px}.content-surface{padding:17px}}@media(max-width:650px){.site-layout{display:block}.sidebar{position:static;height:auto;max-height:none;padding:10px 12px}.site-brand{padding:0 3px 9px;font-size:18px}.nav-group{padding:7px 0 0}.sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.nav-group h2{margin-left:5px}.nav-group a{padding:4px 5px;font-size:13px}.sidebar-foot{display:none}.topline{height:34px}.main-content{padding:16px 12px 25px}.page-heading{gap:12px;margin-bottom:12px}.page-heading h1{font-size:24px}.page-heading .page-lead-image{width:92px;height:58px}.content-surface{padding:13px}.welcome-block img{max-width:42%;margin-right:11px}.credited-figure{float:none;width:100%;max-width:420px;margin:0 auto 18px}.credited-gallery-column{float:none;width:100%;max-width:420px;margin:0 auto 16px}.credited-gallery-column .credited-figure{margin:0 0 10px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.photo-dialog{padding:14px}}
.video-intro{margin:0 0 15px;color:#53665d}.video-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.video-filter{border:1px solid #d5e1d8;border-radius:999px;padding:7px 13px;background:#f7faf7;color:#35584a;font:inherit;font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.video-filter:hover,.video-filter[aria-pressed="true"]{background:#1e5b4c;border-color:#1e5b4c;color:#fff}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:17px}.video-card{display:flex;flex-direction:column;min-width:0;padding:0;overflow:hidden;border:1px solid #dce5de;border-radius:7px;background:#fff;color:#273631;text-align:left;font:inherit;cursor:pointer;box-shadow:0 2px 8px #2342380a;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease}.video-card:hover,.video-card:focus-visible{transform:translateY(-3px);border-color:#b9cdc0;box-shadow:0 8px 22px #23423819;outline:none}.video-card[hidden]{display:none}.video-card-image{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#173d38}.video-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.video-card:hover .video-card-image img{transform:scale(1.04)}.video-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:48px;height:48px;padding-left:3px;transform:translate(-50%,-50%);border:1px solid #ffffffad;border-radius:50%;background:#102a23b8;color:#fff;font-size:17px;box-shadow:0 2px 12px #0005;transition:background .15s ease,transform .15s ease}.video-card:hover .video-play{transform:translate(-50%,-50%) scale(1.08);background:#1c6b58}.video-category{position:absolute;left:9px;top:9px;padding:3px 8px;border-radius:999px;background:#102a23d9;color:#fff;font-size:10px;font-weight:650;letter-spacing:.025em}.video-card-copy{display:flex;flex:1;flex-direction:column;gap:6px;padding:11px 12px 13px}.video-card-copy strong{font-size:14px;line-height:1.35;font-weight:650;color:#25463b}.video-channel{color:#718078;font-size:11px}.video-summary{margin-top:2px;color:#536159;font-size:12px;line-height:1.45}.photo-dialog:has(.video-embed){width:min(1060px,96vw);padding:14px;background:#10211d}.photo-dialog-content:has(.video-embed){display:block;min-height:0}.video-embed{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}.video-embed-details{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 2px 1px;color:#e7efea;font-size:12px}.video-embed-details a{flex:none;color:#b9dac9;text-decoration:none}.video-embed-details a:hover{text-decoration:underline}@media(max-width:650px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.video-card-copy{padding:9px}.video-card-copy strong{font-size:13px}.video-summary{font-size:11px}.video-filter{font-size:12px;padding:6px 10px}.photo-dialog:has(.video-embed){padding:8px}.video-embed-details{align-items:flex-start;flex-direction:column;gap:4px}}
/* Recent SMF posts on the portal home page. */
.latest-posts-panel{margin-top:18px}.latest-posts-panel h2{margin:0 0 10px;font-size:20px}.my-latest-posts{overflow-x:auto}.my-latest-posts .ssi_table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.4}.my-latest-posts .ssi_table td{padding:3px 8px;border-bottom:1px solid #e0e7e1}.my-latest-posts .ssi_table tr:nth-child(even){background:#f7f9f7}.my-latest-posts .ssi_table a{color:#286b5a;text-underline-offset:2px}.my-latest-posts .ssi_table tr:last-child td{border-bottom:0}.my-latest-posts .ssi_table td:first-child{width:1%;color:#68766e}.my-latest-posts .ssi_table td:last-child{width:1%;color:#68766e}

/* Fish family navigation and species tables */
.fish-index-content{padding:clamp(16px,2.3vw,28px)}
.fish-intro{margin:0 0 18px;color:#33483e;font-size:16px;line-height:1.65}
.fish-directory-note{margin:0 0 10px;color:#596a60;font-weight:600}
.fish-family-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin:12px 0 18px}
.fish-family-card{position:relative;display:flex;min-height:160px;flex-direction:column;align-items:flex-start;overflow:hidden;padding:17px 18px 14px;border:1px solid #d8e4db;border-left:4px solid #739b88;border-radius:6px;background:linear-gradient(135deg,#fbfdfb 0%,#eef5ef 100%);color:#263f35;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}
.fish-family-card:before{position:absolute;right:10px;top:-25px;content:"≈";color:#6d9b8520;font-size:116px;line-height:1;pointer-events:none}
.fish-family-card:hover,.fish-family-card:focus{border-color:#8bac98;box-shadow:0 5px 16px #173d3814;transform:translateY(-2px);text-decoration:none}
.fish-family-name{position:relative;font-size:18px;font-weight:700;color:#21483b}
.fish-family-latin{position:relative;margin-top:2px;color:#718078;font-size:12px}
.fish-family-description{position:relative;margin:12px 0 15px;color:#526258;font-size:13px;line-height:1.45}
.fish-family-cta{position:relative;display:flex;width:100%;justify-content:space-between;align-items:center;margin-top:auto;padding-top:9px;border-top:1px solid #dce7df;color:#28634f;font-size:12px;font-weight:700}
.fish-count-note{margin:18px 0 8px;padding:11px 13px;border-left:3px solid #9db9a8;background:#f4f8f4;color:#526258;font-size:13px}
.fish-index-return{margin:8px 0 0;font-size:13px}
.fish-breadcrumb{margin:-5px 0 12px;font-size:13px}
.fish-breadcrumb a,.fish-return a{display:inline-flex;align-items:center;gap:6px;color:#28634f;font-weight:650;text-decoration:none}
.fish-breadcrumb a:hover,.fish-return a:hover{text-decoration:underline}
.fish-family-content .fish-species-table{width:100%;margin:16px 0 4px;border:1px solid #d7e3db!important;border-collapse:collapse!important;background:#fff;font-size:14px;line-height:1.5;table-layout:auto}
.fish-family-content .fish-species-table td,.fish-family-content .fish-species-table th{padding:8px 11px;border:0;border-bottom:1px solid #e2eae4;vertical-align:top}
.fish-family-content .fish-species-table tr:last-child td{border-bottom:0}
.fish-family-content .fish-species-table tr:nth-child(even) td{background:#fafcfb}
.fish-family-content .fish-species-table tr:first-child td{background:#e7f0e9;color:#24483b;font-weight:650}
.fish-family-content .fish-species-table tr:first-child td:first-child{width:21%;font-size:11px;letter-spacing:.05em}
.fish-family-content .fish-species-table td:first-child:not([colspan]){width:24%;color:#52675b}
.fish-family-content .fish-species-table font[color]{color:inherit!important}
.fish-family-content .fish-photo-table{width:auto!important;margin:0 0 7px!important;border:0!important;border-collapse:collapse!important;background:transparent!important}
.fish-family-content .fish-photo-table td{padding:2px 0!important;border:0!important;background:transparent!important}
.fish-photo-thumb{display:inline-flex;align-items:center;gap:7px;margin:2px 7px 5px 0;padding:4px;border:1px solid #dce6de;border-radius:4px;background:#f8faf8;color:#28634f;font-size:11px;text-decoration:none;vertical-align:middle}
.fish-photo-thumb:hover{border-color:#86a995;background:#edf5ef;text-decoration:none}
.fish-photo-thumb img{display:block;width:72px;height:50px;object-fit:cover;border-radius:2px;background:#e8eee9}
.fish-photo-thumb span{padding:0 4px}
.fish-family-content hr.family-break{height:0;margin:18px 0;border:0;border-top:1px solid #dce6df}
.fish-return{margin:20px 0 0;padding-top:12px;border-top:1px solid #e1e9e3;font-size:13px}
@media(max-width:650px){.fish-family-card{min-height:135px;padding:14px}.fish-family-content .fish-species-table{font-size:13px}.fish-family-content .fish-species-table td,.fish-family-content .fish-species-table th{padding:7px}.fish-family-content .fish-species-table tr:first-child td:first-child{width:26%}.fish-family-content .fish-species-table td:first-child:not([colspan]){width:29%}}
.fish-article-button{display:inline-flex;align-items:center;justify-content:center;min-height:60px;margin:2px 3px 5px 0;padding:6px 12px;border:1px solid #dce6de;border-radius:4px;background:#f8faf8;color:#28634f;font-size:12px;font-weight:650;line-height:1.25;text-decoration:none;white-space:nowrap;vertical-align:middle}
.fish-article-button:hover,.fish-article-button:focus{border-color:#86a995;background:#edf5ef;color:#21483b;text-decoration:none}
.fish-species-table td:has(.fish-photo-thumb),.fish-species-table td:has(.fish-article-button){vertical-align:middle}
.fish-family-content .fish-species-table{margin:8px 0 2px!important}
.fish-photo-page-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px;align-items:start}
.fish-photo-page-gallery .credited-figure{float:none;width:100%;max-width:none;margin:0}
.fish-photo-page-gallery .credited-figure img{max-height:70vh;object-fit:contain}
.fish-return{clear:both}
.fish-name-index{align-items:center;margin:0 0 12px}
.fish-name-index>span{margin-right:2px;color:#52665b;font-size:12px;font-weight:650;white-space:nowrap}

/* Compact layout for the original plant descriptions. */
.plants-legacy{margin-top:28px;border-top:1px solid #dce5de;padding-top:14px}.plants-legacy table{width:100%;border-collapse:collapse;margin:8px 0}.plants-legacy td{padding:8px;vertical-align:top}.plants-legacy table:has(td[bgcolor]){margin:16px 0 0}.plants-legacy td[bgcolor]{background:#eaf2ec!important;color:#254f3e;border:1px solid #d8e5db}.plants-legacy td[bgcolor] font{color:#254f3e!important}.plants-legacy img{max-width:100%;height:auto}.plant-taxonomy{clear:none;width:auto;max-width:100%;border-collapse:collapse;margin:22px 0}.plant-taxonomy td,.plant-taxonomy th{border:1px solid #dce5de;padding:5px 9px}.plant-taxonomy tr:first-child td{background:#eaf2ec}.content-surface pre{white-space:pre-wrap;overflow-wrap:anywhere}
.plants-intro table{width:100%;border-collapse:collapse}.plants-intro td{vertical-align:top;padding:0 12px 8px 0}.plants-intro td:first-child{width:180px}.plants-intro img{max-width:100%;height:auto}.plants-intro p:first-child{margin-top:0}@media(max-width:650px){.plants-intro table,.plants-intro tbody,.plants-intro tr,.plants-intro td{display:block}.plants-intro td:first-child{width:min(180px,100%)}.plants-intro td{padding-right:0}}
.setup-article{overflow-x:auto}.setup-article>table{width:100%;border-collapse:collapse;margin:0 0 12px}.setup-article td{vertical-align:top}.setup-article td[bgcolor="#0080C0"]:has(a[name]){background:#eaf2ec!important;border:1px solid #d8e5db;padding:7px 10px}.setup-article td[bgcolor="#0080C0"]:has(a[name]) :is(a,p,font){color:#254f3e!important}.setup-article td[bgcolor="#0080C0"]:has(a[name]) p{margin:0}.setup-article img{max-width:100%;height:auto}
.plant-article-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,350px);gap:20px;align-items:start}.plant-article-text{min-width:0}.plant-article-layout .credited-gallery-column{float:none;width:100%;margin:0}.plant-article-layout .plant-taxonomy{clear:none;max-width:100%}@media(max-width:650px){.plant-article-layout{grid-template-columns:minmax(0,1fr);gap:12px}.plant-article-layout .credited-gallery-column{order:-1;max-width:420px;margin:0 auto}}

.photo-gallery-back{display:block;margin:0 0 14px;padding:8px 12px;border:1px solid #b7cbbd;border-radius:5px;background:#f3f8f4;color:#254f3e;font:inherit;font-weight:600;cursor:pointer}.photo-gallery-back:hover,.photo-gallery-back:focus{background:#dfece2}
