/* Durant Cars Registry — public pages */
.dcr-registry h2 { margin-top: 1.6em; }
.dcr-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-bottom: 1.2em; }
.dcr-table { border-collapse: collapse; width: 100%; font-size: 0.95em; }
.dcr-table th, .dcr-table td { border: 1px solid #ccc; padding: 4px 8px; text-align: left; vertical-align: top; }
.dcr-table thead th { background: #f2f2f2; white-space: nowrap; }
.dcr-table tbody tr:nth-child(even) { background: #fafafa; }
.dcr-table td:last-child { white-space: nowrap; }
.dcr-count { font-size: 0.9em; color: #555; }
.dcr-kv { border-collapse: collapse; margin-bottom: 1.2em; }
.dcr-kv th, .dcr-kv td { border: 1px solid #ccc; padding: 4px 10px; text-align: left; }
.dcr-kv th { background: #f2f2f2; font-weight: 600; white-space: nowrap; }
.dcr-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; margin-bottom: 1.2em; }
.dcr-photos img { width: 100%; height: auto; display: block; border: 1px solid #ddd; }
.dcr-actions { margin-top: 1.5em; }
.dcr-form fieldset { border: 1px solid #ccc; padding: 12px 16px; margin: 0 0 1.2em; }
.dcr-form legend { font-weight: 600; padding: 0 6px; }
.dcr-form label { display: block; margin-bottom: 10px; }
.dcr-form input[type=text], .dcr-form input[type=email], .dcr-form input[type=date], .dcr-form select, .dcr-form textarea { display: block; width: 100%; box-sizing: border-box; margin-top: 3px; padding: 6px; }
.dcr-form .dcr-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0 14px; }
.dcr-form .dcr-check { display: flex; gap: 6px; align-items: center; }
.dcr-form .req { color: #b00; }
.dcr-small { font-size: 0.85em; color: #555; }
.dcr-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.dcr-button { background: #b00; color: #fff; border: 0; padding: 10px 22px; font-size: 1em; cursor: pointer; }
.dcr-button:hover { background: #900; }
.dcr-notice { border-left: 4px solid #999; background: #f6f6f6; padding: 8px 14px; margin-bottom: 1.2em; }
.dcr-notice.dcr-ok { border-color: #2a7d2a; }
.dcr-notice.dcr-err { border-color: #b00; }
.dcr-comments ul { margin: 0 0 1em 1.4em; }
.dcr-comments p { margin: 0 0 1em; }
.dcr-table td.dcr-photo-col { text-align: center; white-space: nowrap; }
.dcr-photo-col a { display: inline-flex; align-items: center; gap: 3px; text-decoration: none; }
.dcr-camera { vertical-align: middle; }
.screen-reader-text:not(:focus) { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.dcr-filters { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: flex-end; background: #f6f6f6; border: 1px solid #ddd; padding: 12px 14px; margin: 0 0 1.4em; }
.dcr-filters[hidden] { display: none; }
.dcr-filters label { display: flex; flex-direction: column; font-size: 0.9em; font-weight: 600; gap: 3px; }
.dcr-filters select, .dcr-filters input[type=search] { font-weight: normal; padding: 5px 6px; min-width: 110px; }
.dcr-filters input[type=search] { min-width: 170px; }
.dcr-filters .dcr-check { flex-direction: row; align-items: center; gap: 6px; font-weight: normal; padding-bottom: 6px; }
.dcr-filters .dcr-reset { padding: 6px 14px; cursor: pointer; }
.dcr-filters .dcr-showing { flex-basis: 100%; margin: 0; font-size: 0.9em; }
.dcr-filters .dcr-showing:empty { display: none; }
.dcr-registry tr[hidden], .dcr-registry section[hidden], .dcr-no-match[hidden], .dcr-count[hidden] { display: none; }
@media (max-width: 600px) { .dcr-filters label { flex: 1 1 45%; } .dcr-filters select, .dcr-filters input[type=search] { min-width: 0; width: 100%; } }
.dcr-breadcrumbs { font-size: 0.9em; margin: 0 0 1.2em; }
.dcr-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
.dcr-breadcrumbs li { margin: 0; }
.dcr-breadcrumbs li + li::before { content: "\203A"; padding: 0 0.5em; color: #888; }
.dcr-breadcrumbs [aria-current] { color: #555; }
.dcr-filters .dcr-reset, .dcr-filters .dcr-reset:hover { background: #fff; color: #333; border: 1px solid #bbb; border-radius: 2px; box-shadow: none; font-size: 0.9em; }
.dcr-filters .dcr-reset:hover { background: #eee; }
.entry-content table.dcr-kv { width: auto; min-width: 320px; max-width: 100%; }
.dcr-form [hidden] { display: none !important; }
.dcr-form .dcr-model-text, .dcr-form .dcr-body-text { margin-top: 4px; }
.dcr-form .dcr-detail-text { margin-top: 4px; }
.dcr-filters .dcr-more { flex-basis: 100%; margin-top: 2px; }
.dcr-filters .dcr-more summary { cursor: pointer; font-weight: 600; font-size: 0.9em; color: #cc0000; }
.dcr-filters .dcr-more-fields { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-top: 10px; }
/* 1.9.1: same table and button style as the rest of the site (child theme 1.4.0). */
.dcr-table { font-size: 15px; }
.dcr-table th, .dcr-table td, .dcr-kv th, .dcr-kv td { border-color: #d6d6d6; padding: 7px 12px; }
.dcr-table thead th { background: #f0f0f0; border-bottom: 2px solid #c8c8c8; }
.dcr-kv { font-size: 15px; }
.dcr-kv th { background: #f6f6f6; font-weight: 700; }
.dcr-button { background: #ff0000; border-radius: 2px; font-weight: 700; font-size: 19px; }
.dcr-button:hover { background: #cc0000; }
.dcr-filters .dcr-more summary { color: #cc0000; }
@media (max-width: 700px) { .dcr-table th, .dcr-table td, .dcr-kv th, .dcr-kv td { padding: 6px 8px; } }
/* 1.9.4: search box on its own row above the filters. */
.dcr-filters .dcr-search { flex: 1 1 100%; }
.dcr-filters .dcr-search input[type=search] { width: 100%; max-width: 560px; min-width: 0; font-size: 16px; padding: 8px 10px; }
.dcr-registry-all .dcr-table td:first-child { white-space: nowrap; }
/* 1.9.6: photo captions; car number and engine plate notes on the form. */
.dcr-photos figure { margin: 0; }
.dcr-photos figcaption { font-size: 14px; color: #555; margin-top: 4px; }
.dcr-form .dcr-number { display: grid; gap: 2px; align-content: start; }
.dcr-form .dcr-number .dcr-small { margin: 0 0 6px; }
.dcr-form .dcr-captions label { margin-top: 6px; }
.dcr-admin-photos .dcr-caption { display: block; width: 100%; margin: 4px 0; }
/* 1.9.9: a thumbnail next to each photo's caption box. */
.dcr-form .dcr-caption-row { display: flex; gap: 12px; align-items: center; margin-top: 8px; }
.dcr-form .dcr-caption-row img { width: 96px; height: 72px; object-fit: cover; border: 1px solid #ccc; border-radius: 2px; flex: 0 0 96px; background: #f3f3f3; }
.dcr-form .dcr-caption-row label { flex: 1 1 auto; margin: 0; }
.dcr-form .dcr-caption-row span { display: block; font-size: 0.9em; overflow-wrap: anywhere; }

/* 1.9.12: engine choice above the engine serial number */
.dcr-form .dcr-engine-type { margin-bottom: 10px; }
