.catch-diary{padding:18px;margin:16px 0;border:1px solid var(--site-border,#bfd3cb);border-radius:16px;background:var(--site-surface,#fffdf7);scroll-margin-top:90px}
.catch-diary header,.catch-dialog header{display:flex;justify-content:space-between;gap:16px;align-items:start}
.catch-diary h2,.catch-dialog h2{margin:0;font-size:20px}.catch-diary p,.catch-dialog p{font-size:13px;line-height:1.5;color:var(--site-muted,#526c70);margin:6px 0}
.catch-diary button,.catch-dialog button,.fish-card .catch-log-button{min-height:44px;border:1px solid var(--site-border,#bfd3cb);border-radius:10px;padding:8px 12px;background:var(--site-soft,#e5f0e8);color:var(--site-ink,#173e47);font:600 13px system-ui;cursor:pointer}
.fish-card .catch-log-button{background:#137e83;color:#fff;margin-top:8px}
.catch-diary article{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:12px 0;border-top:1px solid var(--site-border,#bfd3cb)}.catch-diary article div{min-width:0;overflow-wrap:anywhere}.catch-diary article button{flex:none}
.catch-dialog{width:min(520px,calc(100% - 24px));max-height:85dvh;overflow:auto;padding:20px;box-sizing:border-box;border:1px solid #bfd3cb;border-radius:18px;background:#fffdf7;color:#173e47}.catch-dialog::backdrop{background:#12343c88}
.catch-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.catch-fields label{display:grid;gap:6px;font-size:13px;font-weight:600;min-width:0}.catch-fields input,.catch-fields select,.catch-fields textarea{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:8px;border:1px solid #bfd3cb;border-radius:8px;background:#fff;color:#173e47;font:16px system-ui}.catch-wide{grid-column:1/-1}
#catchError{color:#a12828}#catchEntries{max-height:420px;overflow:auto}.catch-diary button:disabled{opacity:.5}
@media(max-width:480px){.catch-diary header{flex-direction:column}.catch-fields{grid-template-columns:1fr}.catch-dialog{padding:16px}}
/* Isolate component headers/forms from the guide's legacy page-level selectors. */
html body .catch-diary>header,html body .catch-dialog form>header{position:static;display:flex;width:100%;max-width:none;min-height:0;margin:0;padding:0;border:0;background:transparent;color:var(--site-ink,#173e47);box-shadow:none;gap:16px}
html body .catch-dialog form{display:block;margin:0;padding:0}
html body .catch-fields label:first-child{min-width:0}
.catch-heading{display:flex;gap:12px;align-items:center;min-width:0}
.catch-emblem{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:14px;background:#dcece3;color:#137e83;font:600 26px system-ui}
html body .catch-diary h2{display:flex;align-items:center;gap:8px;font:700 18px/1.4 system-ui;color:#173e47}
#catchTotal{display:inline-grid;place-items:center;min-width:25px;height:25px;border-radius:20px;padding:0 7px;background:#dcece3;color:#216268;font:600 12px system-ui}
html body .catch-diary .catch-empty{background:#edf3ed;border-radius:10px;padding:12px 14px;margin:14px 0 0;color:#426268;font-size:13px}
.catch-storage-note{margin-top:10px;border:0}.catch-storage-note summary{min-height:36px;padding:8px 0;font-size:12px;font-weight:500;color:#526c70}
#catchStatus:empty{display:none}
html body .catch-diary #exportCatches{white-space:nowrap;flex:none;background:transparent;font-size:12px;min-height:40px}
@media(max-width:480px){html body .catch-diary>header{flex-direction:column;gap:10px}.catch-heading p{font-size:12px}.catch-diary{padding:14px}html body .catch-dialog form>header{flex-direction:row}}
