*{box-sizing:border-box}body{margin:0;background:#f3f5f7;color:#242b33;font:15px system-ui,sans-serif}main{max-width:720px;margin:auto;background:#fff;padding:24px;min-height:100vh}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}header b{font-size:23px}header span{color:#f26350}h1{font-size:28px;letter-spacing:-1px}h2{font-size:20px}.muted{color:#6c7680;line-height:1.6}.small{font-size:12px}a{color:inherit}button,.primary{font:inherit;border:0;background:#eef1f4;border-radius:14px;padding:12px 16px;cursor:pointer;color:#29323b;text-decoration:none;display:inline-block}.primary{background:#f26350;color:white;font-weight:650}button:disabled{opacity:.5;cursor:default}section{margin-bottom:24px}#message{color:#a23d2e}#list article{border:1px solid #e3e7eb;border-radius:18px;padding:17px;margin-bottom:12px}article p{margin:5px 0 12px}article button{margin:3px;font-size:12px}article strong{display:block}label{display:block;margin:14px 0}input,textarea{display:block;width:100%;padding:12px;border:1px solid #d7dce1;border-radius:10px;font:inherit;margin-top:7px}.check{display:flex;align-items:center;gap:9px}.check input{width:auto;margin:0}.map-wrap{height:370px;position:relative;border-radius:20px;overflow:hidden}#address-map{height:100%;touch-action:none}.fixed-pin{position:absolute;top:50%;left:50%;width:40px;height:48px;transform:translate(-50%,-100%);z-index:600;pointer-events:none;filter:drop-shadow(0 3px 4px #0003)}.fixed-pin:before{content:'';position:absolute;width:28px;height:28px;bottom:4px;left:6px;transform:rotate(45deg);background:white;border-radius:4px}.fixed-pin span{position:absolute;top:0;left:0;width:40px;height:40px;display:grid;place-items:center;background:white;border-radius:50%;color:#f26350}.locate{position:absolute;bottom:32px;right:12px;z-index:700;background:white;box-shadow:0 2px 10px #0002;font-size:12px}#away{padding:15px;background:#fff4e9;border-radius:14px;margin:14px 0}#away button{margin:5px}#save{width:100%}input:focus-visible,button:focus-visible,textarea:focus-visible{outline:2px solid #f26350;outline-offset:3px}[hidden]{display:none!important}.night-map .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) saturate(.25) brightness(1.15) contrast(.72)}@media(max-width:520px){main{padding:18px}.map-wrap{height:43vh;min-height:300px}h1{font-size:25px}}

.fixed-pin.invalid span{color:#b82323;background:#ffe1dc}.fixed-pin.invalid:before{background:#ffe1dc}
