*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,sans-serif;line-height:1.4;color:#222;background:#fafafa}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #eaeaea;background:#fff;position:sticky;top:0;z-index:10}
.brand{display:flex;gap:8px;align-items:center}
.brand h1{font-size:20px;margin:0}
.controls{display:flex;gap:16px;align-items:center}
.switch{display:flex;gap:6px;align-items:center;cursor:pointer}
.admin-link{font-size:14px;text-decoration:none;color:#444;border:1px solid #ddd;padding:6px 10px;border-radius:10px;background:#fff}
.view{max-width:960px;margin:0 auto;padding:16px}
#searchInput{width:100%;font-size:18px;padding:12px;border:1px solid #ccc;border-radius:12px;outline:none}
#results{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.result{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:12px;border:1px solid #e5e5e5;background:#fff;cursor:pointer}
.result:hover{border-color:#ccc}
.meta{font-size:14px;color:#666}
.card{background:#fff;border:1px solid #eaeaea;border-radius:14px;padding:12px;margin:8px 0}
.map-wrap{position:relative;border:1px solid #eaeaea;background:#fff;border-radius:14px;overflow:hidden}
.map-wrap object{width:100%;height:auto;display:block}
.marker{position:absolute;width:28px;height:28px;border-radius:50%;border:4px solid #ffd60a;background:rgba(255, 214, 10, 0.25);transform:translate(-50%,-50%);animation:pulse 1.4s ease-in-out infinite}
.marker-note{position:absolute;left:10px;bottom:10px;background:#000;color:#fff;padding:6px 8px;border-radius:8px;opacity:0.85}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,214,10,0.6)}70%{box-shadow:0 0 0 16px rgba(255,214,10,0)}100%{box-shadow:0 0 0 0 rgba(255,214,10,0)}}
.warn{background:#fff3cd;border:1px solid #ffe69c;color:#7a5e00;padding:10px;border-radius:12px;margin-top:10px}
.back{background:#fff;border:1px solid #ddd;padding:8px 10px;border-radius:10px;cursor:pointer}
.footer{padding:16px;text-align:center;color:#666}
.large *{font-size:larger}
