/* Keep public collection actions legible independently of generic link colours. */
.public-medaka-page .fish-card__actions { display:flex;flex-wrap:wrap;gap:8px; }
.public-medaka-page .fish-card__actions :is(button,a) { display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:44px;min-width:0;margin:0;padding:10px 12px;border:1px solid var(--season-control-border,#92b7a8);border-radius:9px;font-size:13px;font-weight:700;line-height:1.4;font-family:inherit;text-decoration:none;cursor:pointer; }
html[data-season] .public-medaka-page .fish-card__actions .fish-profile-link { background:var(--season-accent,#176553);color:#fff; }
html[data-season] .public-medaka-page .fish-card__actions .passport-link { background:var(--season-soft,#edf6f1);color:var(--season-ink,#173e37); }
.public-medaka-page .fish-card__actions .share-link { flex:0 0 44px;padding:8px; }
.public-medaka-page .fish-card__actions :is(button,a):focus-visible { outline:2px solid var(--season-accent,#176553);outline-offset:3px; }
dialog.public-fish-profile { width:min(960px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;backdrop-filter:blur(18px);font:14px/1.6 Tahoma,Arial,sans-serif; }
dialog.public-fish-profile > article { display:flex;flex-direction:column;max-height:calc(100dvh - 40px);min-height:0; }
dialog.public-fish-profile .dialog-header { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;flex-shrink:0; }
dialog.public-fish-profile .dialog-header h2 { margin:2px 0;font-size:22px;overflow-wrap:anywhere; }
dialog.public-fish-profile .eyebrow { margin:0;font-size:10px;letter-spacing:.12em; }
dialog.public-fish-profile .icon-button { flex:0 0 44px;width:44px;height:44px;font-size:24px;cursor:pointer; }
dialog.public-fish-profile #public-fish-meta { color:var(--modal-muted);font-size:12px;overflow-wrap:anywhere; }
dialog.public-fish-profile #public-fish-body { display:flex;flex-direction:column;min-height:0;overflow:hidden; }
dialog.public-fish-profile .fish-profile-navigation { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:12px 16px 8px;flex-shrink:0; }
dialog.public-fish-profile .fish-profile-navigation button { min-width:0;min-height:44px;border:1px solid var(--modal-line);border-radius:8px;background:var(--modal-card);color:var(--modal-ink);font:inherit;font-size:12px;padding:6px;cursor:pointer; }
dialog.public-fish-profile .fish-profile-navigation button[aria-selected="true"] { background:var(--modal-action);border-color:var(--modal-action);color:#fff; }
dialog.public-fish-profile .fish-profile-sections { padding:8px 16px 16px;overflow:auto;min-height:0;overscroll-behavior:contain; }
dialog.public-fish-profile [hidden] { display:none!important; }
dialog.public-fish-profile .public-fish-grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;align-items:start; }
dialog.public-fish-profile .fish-profile-card { padding:14px;border:1px solid var(--modal-line);border-radius:10px;background:var(--modal-card);min-width:0; }
dialog.public-fish-profile :is(h3,h4,p,figure,dl) { margin:0; }
dialog.public-fish-profile h3 { font-size:15px;margin-bottom:8px; }
dialog.public-fish-profile :is(p,small,dt) { color:var(--modal-muted); }
dialog.public-fish-profile .public-fish-photos { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
dialog.public-fish-profile .public-fish-photos img { width:100%;height:180px;object-fit:contain;background:rgba(16,54,61,.88);border:1px solid var(--modal-line);border-radius:8px; }
dialog.public-fish-profile figcaption { font-size:11px;color:var(--modal-muted); }
dialog.public-fish-profile dl > div { padding:7px 0;border-bottom:1px solid var(--modal-line); }
dialog.public-fish-profile dl > div:last-child { border:0;padding-bottom:0; }
dialog.public-fish-profile dt { font-size:11px; }
dialog.public-fish-profile dd { margin:2px 0 0;color:var(--modal-ink);overflow-wrap:anywhere; }
dialog.public-fish-profile .public-parent { display:block;word-break:normal;overflow-wrap:anywhere; }
dialog.public-fish-profile .public-record { padding:10px 0;border-bottom:1px solid var(--modal-line); }
dialog.public-fish-profile .public-record:last-child { border:0; }
dialog.public-fish-profile .public-record :is(strong,small) { display:block; }
dialog.public-fish-profile .public-stack { display:grid;gap:12px; }
dialog.public-fish-profile .public-fish-footer { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-top:1px solid var(--modal-line);background:var(--modal-glass-footer);flex-shrink:0;font-size:11px;color:var(--modal-muted); }
dialog.public-fish-profile .public-fish-footer a { display:flex;align-items:center;min-height:44px;padding:8px 12px;color:var(--modal-ink);text-decoration:none;font-size:13px; }
dialog.public-fish-profile .public-profile-message { padding:24px 16px;overflow:auto; }
/* Only the overview pairs the photo and summary cards; other tabs keep their layout. */
dialog.public-fish-profile .public-fish-overview { align-items:stretch; }
dialog.public-fish-profile .public-fish-overview > .fish-profile-card:first-child { display:flex;flex-direction:column; }
dialog.public-fish-profile .public-fish-overview .public-fish-photos { flex:1; }
dialog.public-fish-profile .public-fish-overview figure { display:flex;flex-direction:column;min-width:0; }
dialog.public-fish-profile .public-fish-overview img { flex:1;height:0;min-height:150px; }
dialog.public-fish-profile .public-fish-overview figcaption { flex:none;padding-top:3px; }
dialog.public-fish-profile .public-summary-facts { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;line-height:1.5; }
dialog.public-fish-profile .public-summary-facts > div { padding:5px 0;min-width:0; }
dialog.public-fish-profile .public-summary-facts > :is(:first-child,:last-child,.public-summary-parents) { grid-column:1 / -1; }
dialog.public-fish-profile .public-summary-facts > :first-child { padding-top:0; }
dialog.public-fish-profile .public-summary-facts dd { font-size:13px; }
/* Compact details retain every published field; only the reading layout changes. */
dialog.public-fish-profile .public-fish-detail-section .public-stack { gap:10px;align-items:start; }
dialog.public-fish-profile .public-fish-detail-section .fish-profile-card { padding:12px; }
dialog.public-fish-profile .public-fish-detail-section h3 { margin-bottom:6px;font-size:14px; }
dialog.public-fish-profile .public-fish-detail-section :is(p,dd,small,figcaption,strong) { overflow-wrap:anywhere; }
dialog.public-fish-profile .public-fish-detail-section :is(p,dd) { font-size:13px;line-height:1.5; }
dialog.public-fish-profile .public-fish-detail-section dl { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px; }
dialog.public-fish-profile .public-fish-detail-section dl > div { padding:5px 0;min-width:0; }
dialog.public-fish-profile .public-fish-detail-section dl > div:first-child { grid-column:1 / -1;padding-top:0; }
dialog.public-fish-profile :is(#public-fish-section-identity,#public-fish-section-history) > .public-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
dialog.public-fish-profile #public-fish-section-lineage .public-fish-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
dialog.public-fish-profile #public-fish-section-quality .public-record { padding:8px 0; }
dialog.public-fish-profile #public-fish-section-quality .public-record:first-of-type { padding-top:0; }
dialog.public-fish-profile #public-fish-section-quality dl { grid-template-columns:repeat(3,minmax(0,1fr));margin-top:6px; }
dialog.public-fish-profile #public-fish-section-quality dl > div:first-child { grid-column:auto;padding-top:5px; }
dialog.public-fish-profile #public-fish-section-history > .public-stack > .fish-profile-card:first-child { grid-column:1 / -1; }
dialog.public-fish-profile .public-fish-detail-section .public-record { padding:7px 0; }
dialog.public-fish-profile .public-fish-detail-section .public-record:first-child { padding-top:0; }
dialog.public-fish-profile .public-fish-detail-section .public-record:last-child { padding-bottom:0; }
@media(max-width:600px) {
 dialog.public-fish-profile { width:calc(100vw - 16px);max-height:calc(100dvh - 16px); }
 dialog.public-fish-profile > article { max-height:calc(100dvh - 24px); }
 dialog.public-fish-profile .dialog-header { padding:10px 12px; }
 dialog.public-fish-profile .dialog-header h2 { font-size:18px; }
 dialog.public-fish-profile .fish-profile-navigation { grid-template-columns:repeat(3,minmax(0,1fr));padding:8px;gap:4px; }
 dialog.public-fish-profile .fish-profile-sections { padding:4px 8px 10px; }
 dialog.public-fish-profile .public-fish-grid { grid-template-columns:1fr;gap:8px; }
 dialog.public-fish-profile .fish-profile-card { padding:10px; }
 dialog.public-fish-profile .public-fish-photos img { height:135px; }
 dialog.public-fish-profile .public-fish-overview img { flex:none;height:120px;min-height:0; }
 dialog.public-fish-profile .public-fish-overview .public-fish-photos { flex:none; }
 dialog.public-fish-profile .public-fish-detail-section .public-stack { gap:8px; }
 dialog.public-fish-profile .public-fish-detail-section .fish-profile-card { padding:10px; }
 dialog.public-fish-profile :is(#public-fish-section-identity,#public-fish-section-history) > .public-stack { grid-template-columns:1fr; }
 dialog.public-fish-profile #public-fish-section-lineage .public-fish-grid { grid-template-columns:1fr;gap:8px; }
 dialog.public-fish-profile #public-fish-section-quality dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
 dialog.public-fish-profile .public-fish-footer { padding:6px 10px;gap:6px; }
}
