:root{--brand: #22aa77;--brand-dark: #1c8f63;--bg: #fafafa;--ink: #1a1a1a;--muted: #666}html,body,#root{margin:0;padding:0;height:100%;font-family:system-ui,sans-serif;color:var(--ink)}.home{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg)}.home-inner{max-width:720px;margin:0 auto;padding:16px 16px 96px}.hero h1{margin:0 0 6px;font-size:24px}.hero .tagline{margin:0 0 14px;color:var(--muted);font-size:15px;line-height:1.45}.search-wrap{margin-bottom:8px}.center-label{color:var(--muted);font-size:14px;margin:12px 0}.muted{color:var(--muted)}.error{color:#c00}.btn-block{display:block;width:100%;box-sizing:border-box;padding:12px 16px;margin:8px 0;font-size:16px;border-radius:8px;cursor:pointer}.btn-block.primary{border:none;background:var(--brand);color:#fff}.btn-block.secondary{border:1px solid #ccc;background:#fff;color:#333}.spot-list{list-style:none;margin:0;padding:0}.spot{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid #eee;border-radius:12px;padding:12px 14px;margin-bottom:8px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.spot:hover{border-color:var(--brand);box-shadow:0 2px 10px #0000000f}.spot .icon{font-size:18px}.spot .meta{flex:1;min-width:0}.spot .title{display:block;font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spot .sub{display:block;font-size:13px;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spot .dist{font-size:13px;color:var(--brand);font-weight:600;white-space:nowrap}.about{display:none}@media (min-width: 760px){.home-inner{padding-top:28px}.hero{background:linear-gradient(135deg,#f6f7f8,#eceeef);border:1px solid #e6e8ea;border-radius:18px;padding:28px 28px 24px;margin-bottom:20px}.hero h1{font-size:32px}.hero .tagline{color:var(--muted);font-size:17px;line-height:1.5;max-width:56ch;margin:0 0 22px}.about{display:block}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 16px}.feature{background:#fff;border:1px solid #e6e8ea;border-radius:12px;padding:14px 16px}.feature h3{margin:0 0 6px;font-size:15px}.feature p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.about-note{margin:0;font-size:13px;color:#555;line-height:1.6}}
