:root{--bg:#f4f3ef;--card:#fff;--ink:#111;--muted:#6d6d6d;--line:#deded9}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button{font:inherit}.shell{width:min(100%,760px);margin:0 auto;min-height:100vh}.screen{padding:28px 20px 38px}.hidden{display:none!important}
.badge{display:inline-block;font-size:11px;letter-spacing:.18em;font-weight:950;opacity:.6;margin-bottom:12px}
h1{font-size:clamp(38px,9vw,62px);line-height:.96;letter-spacing:-.05em;margin:0 0 18px}h2{font-size:28px;letter-spacing:-.03em;margin:16px 0}
.lead{font-size:18px;line-height:1.55;color:#373737}.object-card{background:#fff;padding:18px;border-radius:22px;margin:22px 0;border:1px solid var(--line)}
.label{color:var(--muted);font-size:12px;margin-bottom:5px}.object-id{font-size:23px;font-weight:900}.object-id.small{font-size:14px}
.rules{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0 24px}.rules div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px 10px;min-height:94px}
.rules strong{display:block;font-size:22px;margin-bottom:7px}.rules span{display:block;font-size:12px;color:var(--muted);line-height:1.25}
.btn{width:100%;border:0;border-radius:16px;padding:17px 18px;margin-top:10px;cursor:pointer;font-weight:850}.primary{background:#111;color:#fff}.secondary{background:transparent;border:1px solid #111}.ghost{background:transparent;border:1px solid var(--line)}
.privacy{font-size:12px;color:var(--muted);line-height:1.5;text-align:center;margin:18px 8px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.text-btn{border:0;background:transparent;font-weight:900}
#map{height:390px;width:100%;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#ddd}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.stats>div{background:#fff;border-radius:17px;padding:15px;border:1px solid var(--line)}
.stats span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.stats strong{font-size:20px}.list{display:grid;gap:9px}.list-item{background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px;display:flex;gap:13px;align-items:center}
.list-no{font-size:22px;font-weight:950;min-width:46px}.list-main{flex:1}.list-title{font-weight:850;margin-bottom:3px}.list-meta{color:var(--muted);font-size:12px;line-height:1.4}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;width:min(calc(100% - 32px),600px);background:#111;color:#fff;padding:15px 17px;border-radius:15px;z-index:1001;box-shadow:0 16px 40px rgba(0,0,0,.25)}
.loading{position:fixed;inset:0;background:rgba(244,243,239,.86);backdrop-filter:blur(4px);display:grid;place-items:center;align-content:center;gap:14px;z-index:1000;font-weight:800}.spinner{width:38px;height:38px;border:4px solid #ccc;border-top-color:#111;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:520px){#map{height:320px}.rules strong{font-size:18px}}
