:root{--ink:#12313b;--muted:#60757b;--ocean:#006d77;--deep:#073b4c;--foam:#f3faf9;--sand:#fffaf0;--line:#d9e6e5;--green:#15803d;--yellow:#d98e04;--red:#c62f3a;--grey:#718096;--shadow:0 16px 45px rgba(7,59,76,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}a{color:var(--ocean);text-decoration-thickness:.08em;text-underline-offset:.18em}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.3rem,8vw,5.2rem);line-height:.94;letter-spacing:-.055em}h2{font-size:clamp(1.65rem,4vw,2.7rem);line-height:1.08;letter-spacing:-.035em}button,input{font:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.8rem;z-index:9999}.top{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,1rem);border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);position:relative;z-index:1001}.brand{font-weight:850;font-size:1.25rem;text-decoration:none;color:var(--deep)}.brand span{color:#12a6a0}.top nav{display:flex;gap:1rem}.top nav a{color:var(--ink);text-decoration:none;font-weight:650}main>section,.crumbs,.beach-head{width:min(1160px,90vw);margin-inline:auto}.hero{padding:clamp(3rem,8vw,7rem) 0 2.5rem;display:grid;gap:2rem;align-items:end}.hero p{font-size:1.1rem;max-width:650px;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.76rem!important;font-weight:800;color:var(--ocean)!important;margin-bottom:.7rem}.search{background:white;border:1px solid var(--line);padding:1.2rem;border-radius:20px;box-shadow:var(--shadow)}.search label{display:block;font-weight:750;margin-bottom:.5rem}.search div{display:flex;gap:.5rem}.search input{min-width:0;width:100%;padding:.85rem 1rem;border:1px solid #b6cdca;border-radius:12px}.search button,.button,.directions{background:var(--deep);color:white;border:0;padding:.85rem 1.2rem;border-radius:12px;font-weight:750;text-decoration:none}.map-shell{position:relative;width:min(1400px,96vw);margin-bottom:5rem}.map-shell #map{height:min(66vh,680px);min-height:460px;background:#dcefed;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.legend{position:absolute;z-index:500;right:1rem;bottom:1rem;width:min(310px,calc(100% - 2rem));display:grid;gap:.35rem;background:rgba(255,255,255,.96);padding:1rem;border-radius:15px;box-shadow:0 5px 25px #1232}.legend span{font-size:.82rem}.legend small{color:var(--muted);margin-top:.35rem}.dot,.status{width:.75rem;height:.75rem;border-radius:50%;display:inline-block;margin-right:.45rem}.green{background:var(--green)}.yellow{background:var(--yellow)}.red{background:var(--red)}.grey{background:var(--grey)}.leaflet-marker-icon.marker-dot{border-radius:50%;border:3px solid white;box-shadow:0 2px 9px #1238}.popup-state{font-weight:700}.explain{padding-bottom:6rem}.three,.forecast,.status-grid,.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.three article,.forecast article,.status-grid article,.admin-grid article{border:1px solid var(--line);border-radius:18px;padding:1.25rem;background:#fff}.three p{color:var(--muted)}.symbol{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--foam);font-size:1.3rem}.symbol.blue{color:#1982c4}.symbol.flag{color:var(--red)}.symbol.drop{color:var(--ocean)}footer{background:var(--deep);color:#dbe8e8;padding:3rem max(5vw,1rem);margin-top:6rem}footer p{max-width:700px}footer a{color:white}.page-head,.beach-head{padding:4rem 0 2rem}.page-head h1,.beach-head h1{font-size:clamp(2.4rem,7vw,4.7rem);margin-bottom:1rem}.page-head p,.beach-head>p:last-child{color:var(--muted);font-size:1.1rem}.crumbs{padding-top:1.2rem;display:flex;gap:.5rem;overflow:hidden;white-space:nowrap;font-size:.88rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.beach-card{display:flex;flex-direction:column;justify-content:space-between;min-height:240px;padding:1.4rem;border:1px solid var(--line);border-radius:18px;color:var(--ink);text-decoration:none;transition:.2s}.beach-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.beach-card small,.beach-card p{color:var(--muted)}.beach-card h2{font-size:1.5rem}.empty,.missing{padding:1.5rem;background:var(--foam);border-radius:15px}.now{background:var(--foam);border-radius:28px;padding:clamp(1.2rem,4vw,2.5rem);margin-bottom:5rem}.now-title,.section-title{display:flex;align-items:end;justify-content:space-between;gap:1rem}.now-title h2{font-size:clamp(1.55rem,4vw,2.5rem);margin-bottom:0}.share{border:1px solid var(--deep);background:white;color:var(--deep);padding:.6rem 1rem;border-radius:10px;font-weight:700}.caveat,.note{color:var(--muted);font-size:.9rem}.status-grid{grid-template-columns:repeat(3,1fr);margin-top:1.5rem}.status-grid article{display:flex;flex-direction:column;min-height:145px}.status-grid span{color:var(--muted);font-size:.82rem}.status-grid strong{font-size:1.12rem;margin:.35rem 0}.status-grid small{color:var(--muted);margin-top:auto}main>section:not(.hero):not(.map-shell):not(.explain):not(.page-head):not(.now){margin-top:4.5rem}.alert{border-left:6px solid var(--red);background:#fff3f3;padding:1.2rem;margin:1rem 0;border-radius:8px}.data-table{overflow-x:auto;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;font-size:.9rem}caption{text-align:left;font-weight:800;font-size:1.1rem;padding:1rem}th,td{text-align:left;padding:.8rem;border-bottom:1px solid var(--line);white-space:nowrap}th{background:var(--foam)}.chips,.service-list{display:flex;gap:.6rem;flex-wrap:wrap}.chips span,.service-list span{border:1px solid var(--line);padding:.6rem .8rem;border-radius:999px}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:15px;overflow:hidden}.facts div{background:white;padding:1rem}.facts dt{font-size:.8rem;color:var(--muted)}.facts dd{margin:0;font-weight:750}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.sun{background:var(--sand);padding:1.5rem;border-radius:18px}.prose{max-width:780px!important}.prose h2{margin-top:2.5rem}.error{width:min(700px,88vw);margin:15vh auto}.error .button{display:inline-block;margin-top:1rem}.admin-grid{grid-template-columns:repeat(4,1fr)}.admin-grid article strong{font-size:2rem}.admin-grid article span{display:block;color:var(--muted)}
@media(min-width:850px){.hero{grid-template-columns:1.25fr .75fr}.search{margin-bottom:1rem}}
@media(max-width:760px){.top{height:62px}.top nav a:first-child{display:none}.hero{padding-top:3rem}.map-shell{width:100vw}.map-shell #map{border-radius:0;height:66vh}.legend{position:relative;right:auto;bottom:auto;width:calc(100% - 2rem);margin:-1.5rem auto 0}.three,.cards,.forecast,.status-grid,.admin-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.two-cols{grid-template-columns:1fr}.now{width:100%;border-radius:0}.now-title{align-items:start}.section-title{display:block}footer{margin-top:4rem}}

/* Ficha de playa pública */
.beach-hero,.beach-section{width:min(1180px,92vw);margin-inline:auto}.beach-hero{min-height:390px;margin-top:1rem;padding:clamp(2rem,6vw,5rem);border-radius:34px;display:grid;grid-template-columns:1.5fr .7fr;align-items:center;gap:2rem;color:#fff;background:radial-gradient(circle at 80% 15%,rgba(255,255,255,.25),transparent 27%),linear-gradient(135deg,#063e4d 0%,#087f86 55%,#45c1b1 100%);overflow:hidden;box-shadow:var(--shadow)}.beach-hero .eyebrow,.beach-hero>div>p{color:#e1fbf7!important}.beach-hero h1{font-size:clamp(2.8rem,7vw,5.8rem);max-width:850px;margin-bottom:1rem}.hero-actions{display:flex;gap:.7rem;margin-top:1.8rem}.beach-hero .share{color:#fff;border-color:#fff;background:transparent}.beach-hero .directions{background:#fff;color:var(--deep)}.hero-water{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25)}.hero-water span{font-size:8rem;line-height:.7}.hero-water small{text-transform:uppercase;letter-spacing:.16em;font-weight:800}.now.modern{margin-top:-42px;position:relative;z-index:2;background:#fff;border:1px solid var(--line);box-shadow:0 20px 55px rgba(7,59,76,.15)}.now-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1.5rem 0}.metric{min-height:134px;padding:1.15rem;border:1px solid #dfebe9;border-radius:16px;display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,#f9fcfc)}.metric span,.metric small{color:var(--muted);font-size:.8rem}.metric strong{font-size:1.25rem;line-height:1.2;margin:.45rem 0}.metric small{margin-top:auto}.metric.blue-award{border-color:#a9d4f6;background:#f4faff}.metric.flag-red{border-color:#f1a5aa;background:#fff5f5}.metric.flag-yellow{border-color:#f2d184;background:#fffaf0}.metric.flag-green{border-color:#a7ddba;background:#f4fcf6}.status-summary{font-size:1.1rem;font-weight:720;margin:.9rem 0 .2rem}.quiet-unknown{font-size:.82rem;color:var(--muted);margin:0}.beach-section{margin-top:5.5rem}.beach-section .section-title{margin-bottom:1.6rem}.lead{font-size:1.15rem;max-width:850px;color:#38545c}.forecast.visual{grid-template-columns:repeat(3,1fr)}.forecast.visual article{padding:1.5rem;background:linear-gradient(165deg,#f1fbfa,#fff)}.forecast-day{font-weight:850;color:var(--ocean)}.weather-icon{font-size:2.2rem}.forecast.visual h3{font-size:1.1rem;margin:.4rem 0}.forecast.visual strong{font-size:2rem}.forecast.visual ul{padding:0;list-style:none;color:var(--muted);font-size:.9rem}.sea-block{background:#073b4c;color:#fff;width:min(1280px,96vw);padding:clamp(2rem,5vw,4rem);border-radius:32px}.sea-block .eyebrow,.sea-block small{color:#a8dcd8!important}.sea-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:2rem}.sea-overview>b{font-size:4rem;color:#50d0c1}.sea-overview h3{font-size:1.7rem}.tide-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.tide-list article{padding:1rem;border-radius:14px;background:rgba(255,255,255,.1);display:flex;flex-direction:column}.tide-list strong{font-size:1.4rem}.tide-list .note{grid-column:1/-1}.quality{background:#fffaf0;width:min(1280px,96vw);padding:clamp(1.5rem,5vw,4rem);border-radius:32px}.quality-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.quality-summary article{background:#fff;padding:1.2rem;border-radius:15px;border:1px solid #eee1c9;display:flex;flex-direction:column}.quality-summary span,.quality-summary small{color:var(--muted);font-size:.8rem}.quality-summary strong{font-size:1.25rem;margin:.35rem 0}.quality details{margin-top:1.2rem}.quality summary{cursor:pointer;font-weight:800;padding:1rem}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.feature-grid article{padding:1.3rem;border:1px solid var(--line);border-radius:15px;display:flex;flex-direction:column}.feature-grid span,.feature-grid small{font-size:.8rem;color:var(--muted)}.feature-grid strong{font-size:1.15rem}.service-icons{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}.service-icons article{min-height:130px;padding:1rem;border-radius:17px;background:var(--foam);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.service-icons b{font-size:1.8rem;color:var(--ocean)}.service-icons span{font-weight:750}.service-icons small{color:var(--muted)}.access-section{background:#f4f9f8;padding:clamp(1.5rem,4vw,3rem);border-radius:28px}.access-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.access-cards article{background:#fff;padding:1rem;border-radius:14px;display:flex;gap:.8rem;align-items:center}.access-cards b{width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;background:#dff5ef;color:#067867}.access-cards small{display:block;color:var(--muted)}.post-flags{margin-top:2rem}.post-flags article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.certifications{background:#eef7ff;padding:1.5rem;border-radius:22px}.cert-list{display:flex;gap:.7rem;flex-wrap:wrap}.cert-list span{padding:.7rem 1rem;background:#fff;border-radius:99px;font-weight:750}.cert-list .blue-award{color:#1066a2}.location #beach-map{height:430px;border-radius:24px;overflow:hidden;background:#dcefed}.nearby-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.nearby-grid a{padding:1.3rem;border:1px solid var(--line);border-radius:17px;text-decoration:none;color:var(--ink)}.nearby-grid a:hover{box-shadow:var(--shadow)}.nearby-grid small,.nearby-grid p{color:var(--muted)}.nearby-grid h3{margin:.4rem 0}.nearby-grid span{color:var(--ocean);font-weight:750}
@media(max-width:900px){.beach-hero{grid-template-columns:1fr}.hero-water{display:none}.now-cards{grid-template-columns:repeat(2,1fr)}.quality-summary,.feature-grid,.access-cards{grid-template-columns:repeat(2,1fr)}.service-icons{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.beach-hero{width:100%;border-radius:0;margin-top:0;min-height:330px;padding:2.2rem 1.2rem}.beach-hero h1{font-size:2.8rem}.hero-actions{flex-wrap:wrap}.now.modern{margin-top:-24px;border-radius:22px;width:94%;padding:1rem}.now-title{display:block}.now-cards{grid-template-columns:1fr 1fr}.metric{min-height:120px;padding:.9rem}.metric strong{font-size:1.05rem}.beach-section{width:90vw;margin-top:4rem}.forecast.visual,.sea-layout,.quality-summary,.feature-grid,.access-cards,.nearby-grid{grid-template-columns:1fr}.sea-block,.quality{width:100%;border-radius:0}.tide-list{grid-template-columns:repeat(2,1fr)}.service-icons{grid-template-columns:repeat(2,1fr)}.location #beach-map{height:340px}.data-table table{font-size:.8rem}.post-flags article{grid-template-columns:auto 1fr}.post-flags small{grid-column:2}}
.forecast-week{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important}.forecast-card{display:flex;flex-direction:column;gap:.8rem;min-width:0}.forecast-card-top,.forecast-condition,.temperature-range{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.forecast-card-top p,.forecast-condition h3{margin:0}.temperature-range{align-items:baseline}.temperature-range small{color:var(--muted);white-space:nowrap}.forecast-periods{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.forecast-periods span{padding:.65rem;border-radius:11px;background:rgba(255,255,255,.8);font-size:.84rem}.forecast-periods small{display:block;color:var(--muted)}.forecast-details{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}.forecast-details>span{padding:.35rem .55rem;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.78rem}.forecast-issued{display:block;color:var(--muted);line-height:1.35}.hourly-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:2.2rem 0 1rem}.hourly-heading h3,.hourly-heading p{margin-bottom:0}.hourly-heading>small{color:var(--muted)}.hourly-weather{display:flex;gap:.7rem;overflow-x:auto;padding:.2rem .1rem 1rem;scroll-snap-type:x proximity;scrollbar-color:#91c9c4 transparent}.hourly-weather article{flex:0 0 142px;scroll-snap-align:start;display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#fff,#f4fbfa)}.hourly-weather article>small,.hourly-weather article>span,.hourly-weather article>em{color:var(--muted);font-size:.74rem}.hourly-weather article>strong{font-size:.9rem}.hourly-weather article>b{font-size:1.45rem}.hourly-weather article>em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hourly-icon{font-size:1.45rem!important;color:var(--ink)!important}@media(max-width:620px){.forecast-week{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-5vw;padding:0 5vw 1rem}.forecast-week .forecast-card{flex:0 0 82vw;scroll-snap-align:center}.hourly-heading{display:block}.hourly-heading>small{display:block;margin-top:.35rem}.hourly-weather{margin-inline:-5vw;padding-inline:5vw}}
.forecast .periods{font-size:.78rem;line-height:1.45;color:var(--muted)}.classification-history{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.classification-history span{padding:.6rem .75rem;border:1px solid #eee1c9;border-radius:12px;background:#fff}.classification-history small{color:var(--muted)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.admin-nav{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.5rem}.admin-nav a{padding:.7rem 1rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-weight:750;background:#fff}.admin-nav a.active{background:var(--deep);border-color:var(--deep);color:#fff}.admin-nav span{display:inline-grid;place-items:center;min-width:1.45rem;height:1.45rem;padding:0 .35rem;border-radius:99px;background:#e6f5f3;color:var(--deep);font-size:.75rem;margin-left:.25rem}.admin-nav .active span{background:#fff;color:var(--deep)}.admin-notice,.admin-empty{width:min(1160px,90vw);margin:1rem auto;padding:1rem 1.2rem;border-radius:14px}.admin-notice.success{background:#eaf8ef;color:#126335}.admin-notice.error{position:static;width:min(1160px,90vw);margin:1rem auto;background:#fff0f0;color:#9a2029}.admin-empty{background:var(--foam);padding:2rem}.image-review-grid{width:min(1240px,92vw);margin:1rem auto 5rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.image-review-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(7,59,76,.08)}.review-photo{display:block;aspect-ratio:16/10;background:#e6efee;overflow:hidden}.review-photo img{width:100%;height:100%;object-fit:cover;display:block}.review-photo-missing{display:grid;place-items:center;padding:2rem;text-align:center}.review-copy{padding:1.3rem}.review-copy h2{font-size:1.55rem;margin-bottom:.6rem}.review-meta{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:.6rem}.review-meta span{padding:.35rem .55rem;border-radius:999px;background:var(--foam);font-size:.75rem;color:var(--muted)}.review-copy>small{color:var(--muted)}.review-question{margin:1.2rem 0 .75rem;padding-top:1rem;border-top:1px solid var(--line)}.review-copy form{display:flex;gap:.65rem}.review-copy button{border:0;border-radius:11px;padding:.75rem 1rem;font-weight:800;cursor:pointer}.review-yes{background:#168044;color:#fff}.review-no{background:#f2f4f4;color:#41565c}.review-copy button:hover{filter:brightness(.94)}
@media(max-width:760px){.image-review-grid{grid-template-columns:1fr}.review-copy form{display:grid;grid-template-columns:1fr 1fr}.admin-head h1{font-size:2.6rem}}
.admin-login{min-height:65vh;display:grid;place-items:center;padding:4rem 0}.admin-login>div{width:min(470px,92vw);padding:2rem;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.admin-login h1{font-size:2.5rem}.admin-login form{display:grid;gap:.75rem;margin-top:1.5rem}.admin-login label{font-weight:800}.admin-login input{width:100%;padding:.85rem 1rem;border:1px solid #b6cdca;border-radius:11px}.admin-login button{padding:.85rem 1rem;border:0;border-radius:11px;background:var(--deep);color:#fff;font-weight:800;cursor:pointer}.login-error{padding:.75rem 1rem;border-radius:10px;background:#fff0f0;color:#9a2029}
.image-status-summary{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.2rem}.image-status-summary span{padding:.55rem .75rem;border-radius:12px;background:var(--foam);color:var(--muted)}.image-status-summary b{color:var(--deep)}.all-images-grid{width:min(1240px,92vw);margin:1rem auto 4rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.all-image-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}.all-image-photo{display:block;aspect-ratio:16/10;background:#e6efee;overflow:hidden}.all-image-photo img{width:100%;height:100%;object-fit:cover;display:block}.all-image-card>div{padding:1rem}.all-image-card h2{font-size:1.25rem;margin:.35rem 0}.all-image-card small{display:block;color:var(--muted);min-height:2.7em}.image-state{display:inline-block;padding:.25rem .5rem;border-radius:99px;font-size:.7rem;font-weight:850;text-transform:uppercase}.image-state.published{background:#e4f6e9;color:#126335}.image-state.pending{background:#fff3cd;color:#805600}.all-image-actions{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--line)}.all-image-actions a{font-weight:750;text-decoration:none}.all-image-actions form{margin:0}.all-image-actions button{border:1px solid #efb8bd;background:#fff5f5;color:#a8202b;padding:.55rem .7rem;border-radius:9px;font-weight:800;cursor:pointer}.admin-pagination{width:min(1240px,92vw);margin:0 auto 4rem;display:flex;align-items:center;justify-content:center;gap:1rem}.admin-pagination a{padding:.65rem .9rem;border:1px solid var(--line);border-radius:10px;text-decoration:none;font-weight:750}
@media(max-width:950px){.all-images-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.all-images-grid{grid-template-columns:1fr}.all-image-actions{align-items:stretch;flex-direction:column}.all-image-actions button{width:100%}}
.bulk-image-actions{width:min(1240px,92vw);margin:1rem auto;position:sticky;top:.75rem;z-index:30}.bulk-image-actions form{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(7,59,76,.12);backdrop-filter:blur(10px)}.bulk-image-actions label{font-weight:750;cursor:pointer}.bulk-image-actions input,.image-selector input{width:1.15rem;height:1.15rem;accent-color:var(--deep);vertical-align:middle}.bulk-image-actions button{border:0;border-radius:10px;padding:.7rem .9rem;background:#b4232f;color:#fff;font-weight:850;cursor:pointer}.bulk-image-actions button:disabled{background:#ccd4d5;color:#6a7a7e;cursor:not-allowed}.bulk-image-actions button span{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;margin-left:.3rem;border-radius:99px;background:rgba(255,255,255,.2)}.all-image-card{position:relative}.image-selector{position:absolute;top:.65rem;left:.65rem;z-index:2;display:flex;align-items:center;gap:.4rem;padding:.45rem .6rem;border-radius:10px;background:rgba(255,255,255,.95);box-shadow:0 3px 14px rgba(7,59,76,.2);font-size:.78rem;font-weight:800;cursor:pointer}.all-image-card:has([data-image-select]:checked){outline:3px solid #168044;outline-offset:1px}.all-image-card:has([data-image-select]:checked) .image-selector{background:#e4f6e9;color:#126335}
@media(max-width:620px){.bulk-image-actions form{align-items:stretch;flex-direction:column}.bulk-image-actions button{width:100%}}
.metric em{font-size:.75rem;line-height:1.35;color:var(--muted);font-style:normal;margin-bottom:.55rem}.certainty{display:inline-block;margin-left:.35rem;padding:.16rem .42rem;border-radius:999px;font-size:.62rem;line-height:1;text-transform:uppercase;letter-spacing:.04em}.certainty.confirmed{background:#dff5e7;color:#126335}.certainty.estimate{background:#fff0c7;color:#805600}
