:root{--paper:#f6f3e9;--ink:#20271d;--lime:#d7f35b;--line:#d8d9cb}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Arial,sans-serif}a{color:inherit}header,main,footer{max-width:1400px;margin:auto}header{padding:24px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}header>a:last-child{font-size:12px;font-weight:bold;letter-spacing:2px;text-decoration:none}.brand{font-size:30px;font-weight:900;letter-spacing:-2px;text-decoration:none}.brand span{background:var(--lime);font-size:14px;letter-spacing:0;display:inline-block;transform:rotate(-8deg);padding:3px 6px;margin-left:8px}.hero{padding:65px 5% 50px;display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800}h1{font-size:clamp(40px,5.5vw,77px);line-height:1.02;letter-spacing:-4px;margin:24px 0}h1 em{font-style:normal;background:var(--lime);padding:0 8px}h2{font-size:28px;letter-spacing:-1px;margin:8px 0 22px}h3{margin:10px 0}.hero p:not(.eyebrow){color:#606556}.actions{display:flex;gap:12px;margin-top:26px}button{border:1px solid var(--ink);background:var(--ink);color:white;padding:13px 20px;border-radius:7px;font:inherit;font-weight:700;cursor:pointer}button:hover{filter:brightness(1.2)}button:disabled{opacity:.5;cursor:wait}.secondary{background:transparent;color:var(--ink)}.micro{font-size:12px;color:#666e5c}.portrait{position:relative;transform:rotate(3deg);border:10px solid white;box-shadow:0 12px 25px #20271d20;max-width:360px;justify-self:center}.portrait img{width:100%;height:290px;object-fit:cover;display:block}.portrait span{position:absolute;bottom:-22px;left:15px;white-space:nowrap;transform:rotate(-7deg);background:var(--lime);padding:10px 18px;font-size:13px;font-weight:900}.map-section{padding:20px 5% 35px}.toolbar{display:flex;align-items:center;justify-content:space-between}.toolbar label{font-size:12px}.workspace{display:grid;grid-template-columns:1fr 320px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}#map{height:560px;background:#dce5d7;z-index:0}aside{height:560px;overflow:auto}.aside-title{padding:20px;border-bottom:1px solid var(--line)}.aside-title span{font-size:12px;color:#666}.card{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;background:white;color:var(--ink);padding:18px;font-weight:normal}.card:hover{background:#f1f4e8;filter:none}.card strong{display:block;font-size:16px}.badge{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#637b32;font-weight:bold}.card small{display:block;color:#777}.empty{padding:30px 20px;color:#6c7464}.pin{background:var(--lime);border:2px solid var(--ink);border-radius:50% 50% 50% 0;transform:rotate(-45deg);width:28px;height:28px;box-shadow:0 2px 4px #0003}.pin.found{background:#fff}.pin span{display:block;transform:rotate(45deg);text-align:center;font:bold 10px/23px Arial}footer{padding:25px 5%;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:12px}footer a{font-weight:900}dialog{width:min(550px,94vw);border:1px solid var(--line);border-radius:14px;padding:30px;background:var(--paper);max-height:90vh;overflow:auto}dialog::backdrop{background:#17201499}.close{float:right;padding:0 10px;background:transparent;color:var(--ink);font-size:25px;border:0}label{display:block;font-size:13px;font-weight:bold;margin:12px 0}input,textarea,select{font:inherit;color:var(--ink);border:1px solid #bfc4b2;border-radius:5px;background:white;padding:10px;width:100%;margin-top:5px}textarea{min-height:85px;resize:vertical}.coords{display:grid;grid-template-columns:1fr 1fr;gap:12px}.status{color:#8b301b;font-size:13px}.photo{width:100%;border-radius:7px;margin:10px 0}.comment{padding:12px 0;border-top:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere}.story{white-space:pre-wrap;overflow-wrap:anywhere}#detail-content h2{overflow-wrap:anywhere}.leaflet-container{font-family:Arial,sans-serif}@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:30px;gap:30px}.portrait{display:none}h1{letter-spacing:-2px}.workspace{grid-template-columns:1fr}#map{height:420px}aside{height:260px}.toolbar{gap:10px}.toolbar h2{font-size:23px}footer{gap:20px}header>a:last-child{font-size:9px}}

/* Keep the complete sticker artwork recognisable on every screen. */
.portrait{width:100%;max-width:400px}
.portrait img{height:auto;aspect-ratio:1;object-fit:contain}
.pin{width:44px;height:48px;transform:none;border-radius:7px;padding:3px;position:relative}
.pin:after{content:"";position:absolute;bottom:-8px;left:15px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid var(--ink)}
.pin img{display:block;width:100%;height:100%;object-fit:contain;border-radius:3px;background:#d8dfbf}
@media(max-width:760px){.portrait{display:block;max-width:260px;margin:0 auto 20px;justify-self:center}.hero{gap:24px}}
