/* Higher contrast slate surfaces, clear mint actions, and a taller sighting list. */
:root{background:#111c23;color:#edf3f4;--teal:#a4e2c8;--muted:#b7c8ce;--line:#435660}
body{background:#111c23;color:#edf3f4}.header{background:#182932;border-color:#435660}a.brand,.brand-light{color:#f1f6f5}.brand small{color:#c2d3d6}.brand-mark{background:#a4e2c8;color:#18382c}
.heading{background:#21343e;border-color:#435c68}.heading h1,.animal-detail h2,.modal-heading h2{color:#f3f7f7}.eyebrow{color:#b5e9d4}.heading p,.animal-detail p,.pet-heading>span{color:#c6d4d9}.home-illustration{mix-blend-mode:normal;border-radius:18px;background:#fffdf5}
.live-status{background:#214d3e;border-color:#467d65;color:#dcffef}.live-status i{background:#9bebbf;box-shadow:0 0 0 3px #345f4b}.live-status.offline{background:#644522;color:#fff0d7;border-color:#a3814d}
.citizen-banner{background:#263e43;border-color:#537078}.citizen-banner h2{color:#f4f8f7}.citizen-banner p{color:#d0dedd}
.workspace{height:max(900px,calc(100vh - 270px));min-height:900px;max-height:none;background:#1b2b34;border-color:#435965;box-shadow:0 10px 35px #0002;grid-template-columns:390px minmax(0,1fr)}
.sidebar{border-color:#435965}.animal-section{background:#1e303a;max-height:430px;flex:0 1 auto;padding:18px 21px;border-color:#435965}.sightings-section{min-height:390px;flex:1}.pet-photo{height:135px;background:#324751}.pet-photo img{background:#324751}.pet-facts{gap:7px 13px;margin:10px 0;padding:9px 0}.pet-facts dt{color:#b8cad0}.pet-facts dd{color:#f3f7f7}.pet-heading{margin-top:10px}.animal-detail p{line-height:1.5}.animal-actions{margin-top:9px}.report-tracked{margin-top:10px;min-height:40px;padding:8px 14px}.section-label{font-size:12px;color:#cee0e3}.animal-section .form-help{font-size:13px;line-height:1.45}
.sightings-heading{padding:20px 21px 12px}.sightings-heading h2{font-size:18px}#listTitle{background:none;padding:0;margin:0;color:#edf3f4;font-size:18px}.sightings-heading h2 #sightingCount{background:#36535b;color:#e6fbf1}.sightings-heading>span{color:#c3d4d9;font-size:13px}.sighting{border-color:#3d525d;padding-top:17px;padding-bottom:17px}.sighting strong{font-size:16px}.sighting p{font-size:14px;color:#cfdbdf}.sighting time{font-size:13px;color:#b8cbd2}.sighting-number{background:#395763;color:#f4f8f8}.sighting:first-child .sighting-number{background:#b95525;color:white}.sidebar-foot{background:#263b45;color:#cedde2;font-size:12px}.sidebar-foot span{color:#ffd598}
.primary{background:#a4e2c8;color:#132e23;box-shadow:none}.primary:hover{background:#c3f2dd}.secondary{background:#293f4a;color:#edf4f5;border-color:#69818b}.secondary:hover{background:#395461}.text-button{color:#b6edd5}.text-button:hover{color:#e3fff3}.danger{color:#ffb5a2}.button{font-size:14px}.form-help,.empty-copy{color:#bdcfd5}.empty-title{color:#f0f6f7}.empty-symbol{color:#b6edd5}
select,input,textarea{background:#15262f;border-color:#6a828e;color:#f1f6f7}input::placeholder,textarea::placeholder{color:#aabfc8;opacity:1}select option{background:#15262f;color:#f1f6f7}input[type=checkbox]{accent-color:#a4e2c8}.badge{background:#ffdaa3;color:#57350f}.badge.reunited{background:#b8e6ca;color:#234e34}.hidden-badge{background:#58446d;color:#f6e9ff}
.map-toolbar,.map-bottom{background:#1e303a;border-color:#435965}.map-toolbar span,.map-bottom>span{color:#ccdce0;font-size:13px}.map-toolbar strong{font-size:15px}.map-dot{background:#a4e2c8}.map-bottom .legend-dot{background:#b95525}.map-bottom .legend-dot.older{background:#698d9d}.map-pin span{background:#476e7d}.map-pin.latest span{background:#b95525}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#f7fafb;color:#1c343e}.leaflet-popup-content .secondary{background:#e5eef1;color:#1c343e;border-color:#748c96}.leaflet-popup-content .hidden-badge{margin-left:0}.leaflet-control-attribution{color:#233f48}
dialog{background:#21343e;color:#edf3f4;border-color:#6a828e}dialog::backdrop{background:#07121bc9}.close-button{color:#d0e0e5}.form-error{background:#592f32;color:#ffe0d8}.notice{background:#5b4729;color:#fff0d3;border-color:#a0885a}.toast{background:#a4e2c8;color:#132e23}.photo-preview,.sighting-photo,.report-image{background:#314954}.geocode-credit,.report-card time{color:#c3d4db}.geocode-credit a{color:#b6edd5}.address-result{background:#2a434e;color:#eef6f6;border-color:#6a828e}.address-result:hover{background:#385b68}.map-pick-banner{background:#233e48;color:#eef7f5;border-color:#a4e2c8}.team-card,.report-card{background:#293f49;border-color:#58727e}.map-unavailable{color:#203d49}
.overview-animal{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:14px 9px;border:0;border-bottom:1px solid #435965;background:transparent;color:#edf3f4}.overview-animal:hover{background:#2d454f}.overview-animal img,.overview-placeholder{width:55px;height:55px;object-fit:cover;border-radius:10px;background:#3c5460;flex-shrink:0}.overview-placeholder{display:grid;place-items:center;font-size:25px}.overview-animal strong{display:block;font-size:16px}.overview-animal small{display:block;font-size:13px;line-height:1.45;color:#c5d7dd;margin-top:4px;overflow-wrap:anywhere}
.animal-map-pin{background:none;border:0;filter:drop-shadow(0 3px 4px #0006)}.animal-map-pin::after{content:'';position:absolute;top:46px;left:16px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid #fff}.animal-map-pin>span{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;border:3px solid #fff;background:#203b43;overflow:hidden}.animal-map-pin img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;object-fit:contain;padding:2px}.animal-map-pin b{font-size:23px}footer{color:#bdcdd5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#ffd18d}
@media(max-width:1000px){.workspace{grid-template-columns:340px minmax(0,1fr)}.animal-section{padding:17px}.map-bottom{align-items:flex-start}}
@media(max-width:720px){.workspace{height:auto;min-height:0}.animal-section{max-height:none;overflow:visible}.pet-photo{height:180px}.sightings-section{min-height:350px;max-height:650px}.map-section{height:480px}.heading h1{font-size:27px}.sightings-heading{padding:18px}.home-illustration{max-width:100%}}
