:root{--ink:#202228;--muted:#7c858c;--yellow:#f8c51c;--paper:#fffdfa}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font:13px 'Courier New',monospace;color:var(--ink);background:#0b1520}body{overflow:hidden}button,input,a{font:inherit}button{cursor:pointer}button,a,input{touch-action:manipulation}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #c78e0c;outline-offset:3px}[hidden]{display:none!important}header{position:absolute;z-index:3;top:12px;left:12px;right:12px;display:flex;gap:10px;align-items:center;pointer-events:none}header>*{pointer-events:auto}.town-bar,.tools,.search,.controls{border:1px solid #dce0e4;background:#fffdfa;box-shadow:0 2px 0 #0b152022;border-radius:14px}.town-bar{display:flex;align-items:center;height:42px;min-width:225px;flex:1;max-width:600px;padding:0 12px;gap:12px}.logo{color:#222;text-decoration:none;white-space:nowrap;font-weight:900;font-size:14px;display:flex;align-items:center;gap:10px}.logo span{display:grid;place-items:center;background:#0d1622;color:#ffdf4a;width:26px;height:26px;border-radius:7px;font-size:32px;line-height:1}#feed-toggle{border:0;border-left:1px solid #e4dfd6;background:transparent;display:flex;gap:7px;align-items:center;min-width:0;flex:1;padding:0 0 0 12px;color:#31966c;font-size:10px;letter-spacing:1px;white-space:nowrap}#feed-toggle i{width:6px;height:6px;background:#35a97c;border-radius:50%;flex-shrink:0}#latest-event{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9a8b7d;font-size:11px;letter-spacing:0;flex:1;text-align:left}.search{display:flex;align-items:center;gap:7px;padding:0 12px;width:260px;height:42px;background:#ebedf0;color:#8d969f}.search input{border:0;outline:none;background:none;width:100%;min-width:0;font-size:12px;color:#303945}.primary{min-height:42px;border:0;border-bottom:3px solid #dbad17;border-radius:11px;padding:0 16px;background:var(--yellow);color:#24200b;font-weight:bold;white-space:nowrap}.primary:hover{background:#ffd43b}.tools{display:flex;padding:4px 7px;height:42px}.tools button,.controls button{border:0;background:transparent;border-radius:18px;min-width:32px;height:30px;color:#556473;font-weight:bold;font-size:16px}.tools button:hover,.controls button:hover{background:#eceff1}main{position:absolute;inset:0;overflow:hidden}#world{position:absolute;inset:0;touch-action:none}#world canvas{display:block;width:100%;height:100%;cursor:grab}#world canvas:active{cursor:grabbing}.controls{position:absolute;bottom:18px;right:16px;display:flex;gap:3px;padding:4px;align-items:center;border-radius:24px}.controls button{font-size:13px;min-width:36px}.controls .active{background:var(--yellow);color:#24200b}.divider{height:18px;width:1px;background:#e1e5e7;margin:0 3px}#hint{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);color:#a3afbc;font-size:10px;pointer-events:none;white-space:nowrap}.bottom-note{position:absolute;bottom:26px;left:18px;font-weight:bold;font-size:10px;color:#a9b5bd}.bottom-note span{display:block;font-size:8px;letter-spacing:1px;margin-top:5px;color:#8d9da8}.activity{position:absolute;z-index:4;left:12px;top:64px;width:410px;max-height:60vh;overflow:auto;background:var(--paper);border:1px solid #dedfdd;border-radius:14px;padding:18px;box-shadow:0 12px 40px #08121b40}.activity-title{display:flex;justify-content:space-between;gap:12px;font-weight:bold;font-size:11px}.activity-title span:last-child{font-size:9px;color:#8d9697}.activity ul{list-style:none;margin:15px 0;padding:0}.activity li{font-size:12px;line-height:1.5;padding:10px 0;border-bottom:1px solid #edebe6;overflow-wrap:anywhere}.activity small{font-size:10px;color:#9a938b}dialog{width:min(420px,calc(100vw - 28px));max-height:calc(100dvh - 90px);overflow:auto;border:1px solid #d4dce1;border-radius:18px;background:var(--paper);color:#202228;padding:24px;box-shadow:0 16px 60px #06101f40}dialog::backdrop{background:#0b15204d}#place{margin:0;position:fixed;left:auto;right:max(24px,calc((100vw - 1000px)/2));top:85px;width:372px}#place::backdrop{background:transparent}.close{float:right;border:0;background:transparent;width:24px;height:24px;color:#82909d;font-size:20px}h1,h2{font:700 25px/1.2 'Courier New',monospace;letter-spacing:-1px;margin:16px 0}h2{font-size:23px}p{font-size:13px;line-height:1.65;color:#77756e}.overline{font-size:10px;letter-spacing:1px;color:#919b9f;margin:7px 0 16px}.guide{display:grid;gap:14px;margin:24px 0}.guide div{display:flex;gap:15px}.guide b{color:#b29832}.guide small{color:#899399}.full{width:100%;height:44px}.fine{font-size:10px;margin-bottom:0;text-align:center}.place-icon{width:56px;height:56px;display:grid;place-items:center;background:#eaf0f3;border-radius:12px;font-size:30px;margin-bottom:14px;overflow:hidden}.place-icon img{width:100%;height:100%;object-fit:contain}.place-category{color:#6b8190;font-size:9px;font-weight:bold;letter-spacing:1px}.place-actions{display:flex;gap:10px;margin-top:18px}.place-actions>*{flex:1}.secondary{border:0;border-bottom:3px solid #f3c5ce;background:#fce5e9;color:#e33154;min-height:50px;border-radius:11px;font-weight:bold}.secondary:disabled{opacity:.6;cursor:wait}.place-stats{display:flex;margin:22px 0;padding:16px 0;border-top:1px solid #e8e7e3;border-bottom:1px solid #e8e7e3;font-size:11px;color:#83847f;line-height:1.8}.place-meta{font-size:9px;line-height:1.6;color:#9b9e99;margin-top:18px}.takeover-note{border-top:1px solid #e8e7e3;margin-top:22px;padding-top:16px;color:#9b6c60;font-size:11px}.takeover-note b{display:block;letter-spacing:1px;font-size:10px;margin-bottom:8px}form label{display:block;font-size:11px;font-weight:bold;margin:18px 0}dialog input{display:block;width:100%;border:1px solid #d4dbdf;background:#fff;border-radius:7px;padding:12px;margin-top:7px;color:#293742}#no-webgl{position:absolute;top:25%;left:10%;background:#fff;padding:24px;max-width:80%}#hover-label{position:absolute;background:#fffdfa;padding:8px 12px;border-radius:7px;box-shadow:0 3px 12px #0003;font-size:11px;pointer-events:none;z-index:2}.plot-highlight{color:#a58c31}@media(max-width:800px){#latest-event{display:none}.town-bar{min-width:190px;flex:0}.search{flex:1;min-width:80px}.tools{display:none}#hint{bottom:75px;max-width:90%;white-space:normal;text-align:center}.bottom-note{bottom:25px}}@media(max-width:540px){header{top:8px;left:8px;right:8px;gap:7px;flex-wrap:wrap}.town-bar{height:38px;min-width:0;flex:1;padding:0 9px}.logo{font-size:12px;gap:6px}#feed-toggle{font-size:8px;letter-spacing:0;padding-left:8px}.primary{padding:0 10px;font-size:11px;min-height:38px}.search{height:34px;opacity:.95}.activity{top:94px;left:8px;width:calc(100vw - 16px)}#place{top:100px;left:12px;right:12px;width:auto;max-height:calc(100dvh - 125px)}.controls{right:10px;bottom:14px}.controls button{min-width:29px}.bottom-note{left:12px;font-size:9px}.bottom-note span{max-width:90px;font-size:7px}dialog{padding:22px}#hint{font-size:9px}}

.place-heading{display:grid;grid-template-columns:56px 1fr;gap:4px 14px;margin:-24px -24px 20px;padding:24px;background:#edf2f5;border-bottom:1px solid #dae2e7;padding-right:40px}.place-heading .place-icon{grid-row:1 / 3;margin:0}.place-heading h2{font-size:20px;letter-spacing:-.5px;margin:3px 0}.place-heading .place-category{align-self:start}.close{position:relative;z-index:1}

.rotate-label{font-size:10px;color:#77838d;padding-left:3px}.controls #rotate-left,.controls #rotate-right{font-size:20px}@media(max-width:540px){.rotate-label{display:none}.controls{left:50%;right:auto;transform:translateX(-50%);white-space:nowrap}.controls button{min-width:30px}.bottom-note{bottom:65px}.controls .divider{margin:0 1px}}
#hint{bottom:70px;max-width:70vw;white-space:normal;text-align:center}@media(max-width:540px){#hint{max-width:90vw;bottom:72px}.bottom-note{bottom:112px}}

#auto-rotate[aria-pressed="true"]{background:var(--yellow);color:#24200b}#auto-rotate{font-size:11px}.controls button{transition:background .15s}@media(max-width:540px){.controls button{min-width:28px}.controls{gap:2px}}

.account-button{height:42px;border:1px solid #dce0e4;border-radius:11px;background:var(--paper);color:var(--ink);padding:0 14px;font-weight:bold;white-space:nowrap}
#account-dialog h3{font-size:12px;margin:0 0 12px}.auth-section{border-top:1px solid #e3e5e4;margin-top:22px;padding-top:20px}.auth-option{width:100%;min-height:44px;margin:0 0 9px;border:1px solid #ced7dc;border-radius:9px;background:#f1f5f4;color:#293c3b;font-weight:bold;padding:10px}.auth-option:hover{background:#e3eeea}.auth-note{font-size:11px;line-height:1.65;color:#707a7b}.auth-identity{background:#edf3ef;border:1px solid #dbe6de;border-radius:10px;padding:14px;overflow-wrap:anywhere}.auth-identity small{display:block;margin-top:8px;color:#61736b}.auth-passkeys{margin-top:18px}#auth-status{font-size:12px;color:#345d4c;min-height:18px;overflow-wrap:anywhere}.auth-text-button{border:0;background:none;padding:10px 0;color:#775a4c;text-decoration:underline}#account-dialog button:disabled{opacity:.55;cursor:not-allowed}#account-dialog input{font-size:16px}
@media(max-width:1050px){.town-bar{min-width:190px}.search{width:190px}#latest-event{display:none}}@media(max-width:540px){.account-button{height:38px;font-size:11px;padding:0 10px}.town-bar{min-width:140px}#feed-toggle{display:none}#account-dialog{max-height:calc(100dvh - 36px)}}

/* A single, consistently drawn tool band, with touch access on small screens. */
.town-toolstrip{position:fixed;z-index:4;top:66px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:6px 8px;background:#fffdfa;border:1px solid #dce0e4;border-radius:16px;box-shadow:0 3px 0 #06101d25;max-width:calc(100vw - 24px);overflow-x:auto;scrollbar-width:thin}
.town-toolstrip button{flex:0 0 47px;border:0;background:transparent;border-radius:10px;color:#52646d;min-height:46px;display:grid;justify-items:center;align-content:center;gap:4px;padding:4px;transition:background .15s,color .15s}.town-toolstrip svg{width:23px;height:23px}.town-toolstrip button span{font-size:9px;font-weight:bold}.town-toolstrip button:hover{background:#edf1ed;color:#2a5544}.town-toolstrip button[aria-pressed=true],.town-toolstrip button[aria-expanded=true]{background:#f9e49b;color:#513e0c}#snapshot svg{color:#a56543}#music-button[aria-pressed=true] svg{color:#348263}#live-dot[data-state=live]{background:#35a97c}#live-dot[data-state=reconnecting]{background:#d49b3e}
.town-panel{position:fixed;z-index:5;top:130px;right:18px;width:330px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 220px);overflow:auto;background:var(--paper);border:1px solid #dce0e4;border-radius:16px;padding:22px;box-shadow:0 14px 40px #06101b40}.town-panel h2{font-size:20px;letter-spacing:-.5px}.town-panel p{font-size:12px}.panel-close{float:right;width:26px;height:26px;min-width:26px;border:0;border-radius:50%;background:#edf0ed;color:#5a6a6a;font-size:18px}.panel-note{display:block;color:#7c8581;font-size:10px!important;line-height:1.65}.tag-options{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.tag-options button{border:1px solid #d9dfd8;border-radius:20px;padding:8px 10px;background:#f4f5ef;color:#57665c;font-size:11px}.tag-options button[aria-pressed=true]{background:#e3edd9;border-color:#7d9b6b;color:#34502d}.tag-options button b{margin-left:6px;font-size:9px;opacity:.65}.rank-tabs{display:flex;gap:7px}.rank-tabs button{flex:1;border:1px solid #dce1db;background:#f3f4ee;color:#69726c;padding:10px;border-radius:8px;font-size:11px}.rank-tabs button[aria-pressed=true]{background:#f5e2a7;color:#574717;border-color:#dac682}#rankings{list-style:none;margin:16px 0;padding:0}#rankings li{border-bottom:1px solid #e6e8e2}.rank-row{display:grid;grid-template-columns:20px 28px 1fr auto;align-items:center;gap:9px;padding:12px 0;width:100%;border:0;background:none;color:#2f4038;text-align:left}.rank-row img{width:28px;height:28px;object-fit:contain;border-radius:6px}.rank-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row small{color:#89938c}.rank-score{font-weight:bold;color:#886938}.rank-empty{padding:20px 0;color:#7c8581;font-size:12px;line-height:1.7}
.activity{top:130px}.activity-title{align-items:center}.activity-title .panel-close{order:3}.activity-title #feed-status{margin-left:auto;font-size:9px;color:#52806b}dialog select{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #d4dbdf;border-radius:7px;background:#fff;color:#293742;font:inherit}#town-toast{position:fixed;z-index:6;left:50%;bottom:126px;transform:translateX(-50%);max-width:calc(100vw - 30px);padding:12px 18px;border-radius:12px;background:#fffdf1;color:#4c5b52;box-shadow:0 6px 24px #09141e40;font-size:12px;text-align:center;pointer-events:none}
.ride-hud{position:fixed;z-index:4;bottom:80px;left:50%;transform:translateX(-50%);background:#fffdf5;border:1px solid #dddccf;border-radius:14px;padding:12px;display:flex;gap:9px;align-items:center;max-width:calc(100vw - 24px)}.ride-hud strong{display:block;font-size:12px}.ride-hud span{display:block;margin-top:4px;font-size:9px;color:#7e857a}.ride-hud button{border:1px solid #d9ddd1;background:#eff2e9;border-radius:8px;padding:9px;color:#435342;font-size:10px;white-space:nowrap}.ride-hud button:disabled{opacity:.45}#ride-interact{background:#f7e2a2}.ride-pad{display:flex;gap:4px}.ride-pad button{font-size:18px;min-width:38px;min-height:38px;touch-action:none}.ride-pad button:active{background:#f7e2a2}body[data-riding=true] #hint{visibility:hidden}
@media(max-width:800px){.town-toolstrip{top:65px}.ride-hud{flex-wrap:wrap;justify-content:center;width:480px}.ride-hud>div:first-child{flex:1 0 100%;text-align:center}.town-panel{top:126px;right:12px}.activity{top:126px}}
@media(max-width:540px){.town-toolstrip{top:91px;left:8px;transform:none;max-width:calc(100vw - 16px);width:calc(100vw - 16px);gap:2px;padding:4px 6px;border-radius:12px}.town-toolstrip button{flex-basis:42px;min-height:43px}.town-toolstrip svg{width:21px;height:21px}.town-toolstrip button span{font-size:8px}.town-panel,.activity{top:150px;max-height:calc(100dvh - 235px);width:calc(100vw - 24px);left:12px;right:12px}.ride-hud{bottom:76px;padding:9px;gap:6px}.ride-hud button{padding:8px}.ride-pad{flex:1 0 100%;justify-content:center}.ride-pad button{min-width:56px;min-height:40px}#town-toast{bottom:230px}body[data-riding=true] .bottom-note{display:none}#place{top:151px;max-height:calc(100dvh - 225px)}}
@media(prefers-reduced-motion:reduce){.town-toolstrip button{transition:none}}

/* v19: search results, price list, Quarter scope */
.search-wrap{position:relative}.search-wrap .search{width:260px}
.find-results{position:absolute;z-index:8;top:48px;left:0;width:min(360px,calc(100vw - 16px));max-height:60vh;overflow:auto;list-style:none;margin:0;padding:6px;background:var(--paper);border:1px solid #dce0e4;border-radius:14px;box-shadow:0 14px 40px #06101b40}
.find-row{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;width:100%;border:0;background:none;text-align:left;padding:8px;border-radius:9px;color:#2f4038}.find-row img:not([src]){visibility:hidden}.find-row img{grid-row:1 / 3;width:28px;height:28px;object-fit:contain;border-radius:50%;background:#fff;border:1px solid #e3e6df}.find-row:hover,.find-row.active{background:#f3f0e0}.find-name{font-size:12px;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.find-row small{font-size:10px;color:#85908a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.find-empty{padding:12px;font-size:12px;color:#7c8581}
.price-list{list-style:none;margin:16px 0;padding:0}.price-list li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid #e8e7e3;font-size:12px}.price-list li b{color:#3a4a41}.price-list li span{font-weight:bold;color:#886938}.price-list small{grid-column:1 / 3;color:#8a8f88;font-size:10px;line-height:1.5}
.scope-label{display:block;font-size:10px;letter-spacing:1px;color:#7c8581;margin:6px 0 12px}.scope-label select{display:block;width:100%;margin-top:6px;padding:9px;border:1px solid #d4dbdf;border-radius:8px;background:#fff;color:#293742;font:inherit;font-size:12px;letter-spacing:0}
.rank-letter{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#efe9d3;color:#7a6a3a;font-weight:bold;font-size:12px}
.price-line{font-size:13px;font-weight:bold;color:#7a5a22;margin:2px 0 8px}.checkout-note{margin-top:10px;color:#8a7a6a;font-size:10px;line-height:1.5}
@media(max-width:800px){.search-wrap{flex:1;min-width:80px}.search-wrap .search{width:100%}}
@media(max-width:540px){.search-wrap{order:4;flex:0 0 100%}.search-wrap .search{width:100%}.find-results{top:40px;left:0;width:calc(100vw - 16px);max-height:50vh}}

.registry-title{font:700 16px/1.3 'Courier New',monospace;margin:4px 0 6px;color:#3a4a41}.registry-msg{font-size:11px;min-height:16px;margin:8px 0 0;color:#7a5a22}#claim-draft label{margin:12px 0}
header{z-index:6}
.garden-panel{margin-top:10px;padding:12px;border:1px solid #d9dfd8;border-radius:10px;background:#f4f7ee}.garden-panel p{margin:0 0 10px;font-size:11px;color:#4f6a45}.garden-variants{display:flex;gap:6px}.garden-variants button{flex:1;border:1px solid #cfd9c6;background:#fff;border-radius:8px;padding:8px;font-size:11px;color:#4a5f40}.garden-variants button[aria-pressed=true]{background:#dfeccf;border-color:#7d9b6b}.owner-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.owner-actions .secondary{flex:1;min-height:40px}.rank-charm{color:#6a8a4a;font-size:10px}
.invite-banner{background:#e8f1dc;border:1px solid #b7cf9f;color:#3e5a2c;border-radius:10px;padding:10px 12px;font-size:12px;font-weight:bold;margin:8px 0}
.pay-status{font-size:12px;min-height:16px;margin:10px 0 0;color:#5a4a22}.pay-extra{display:grid;gap:8px;margin-top:8px}.pay-keep{font-size:11px;line-height:1.6;background:#fbf3de;border:1px solid #ecd9a0;border-radius:8px;padding:10px;color:#5a4a22;overflow-wrap:anywhere}.pay-keep code{font-size:11px}.owner-form{display:grid;gap:8px;width:100%}.owner-form input{margin:0}
.region-map{display:block;width:100%;max-width:300px;aspect-ratio:1;margin:12px auto 4px;border-radius:12px;background:#0f2a35;cursor:crosshair;touch-action:manipulation}
#loading{position:absolute;inset:0;z-index:7;display:grid;place-items:center;pointer-events:none;background:linear-gradient(#0b1520cc,#0b1520aa)}#loading[hidden]{display:none}.loading-card{background:#fffdfa;border:1px solid #dce0e4;border-radius:14px;padding:18px 22px;width:min(360px,calc(100vw - 32px));box-shadow:0 14px 40px #06101b60;display:grid;gap:10px;font-size:13px;color:#3a4a41}.loading-card b{font-size:16px}.loading-bar{height:6px;background:#e8e6dc;border-radius:3px;overflow:hidden}.loading-bar i{display:block;height:100%;width:6%;background:#d9a521;transition:width .4s}#loading.failed{pointer-events:auto}#loading.failed .loading-bar i{background:#c0504d}#loading.failed .loading-card{border-color:#e3b5b2}
#pay-banner{position:fixed;z-index:8;top:70px;left:50%;transform:translateX(-50%);max-width:min(560px,calc(100vw - 24px));padding:12px 18px;border-radius:12px;background:#fffdf1;border:1px solid #e6d9a8;box-shadow:0 8px 28px #09141e55;font-size:12px;color:#4c5b52;text-align:center}#pay-banner[data-kind=ok]{background:#eaf5de;border-color:#b7cf9f;color:#34502d}#pay-banner[data-kind=warn]{background:#fbf0dc;border-color:#e6c79a;color:#6b4a1a}.example-notice{display:block;margin:6px 0 12px;font-size:10px;line-height:1.5;color:#8a8f88}#claim-card,#bb-card{margin-top:8px}
#claim-xrp,#bb-xrp{margin-top:8px}.xrp-mount{display:grid;gap:10px;justify-items:center;margin-top:10px;padding:12px;border:1px solid #d9dfd8;border-radius:10px;background:#f7f8f1}.xrp-assets{display:flex;gap:6px}.xrp-assets button{border:1px solid #cfd9c6;background:#fff;border-radius:8px;padding:8px 10px;font-size:11px}.xrp-qr{width:180px;height:180px;image-rendering:pixelated}.xrp-open{font-size:11px}.xrp-rows{margin:0;display:grid;gap:6px;width:100%;font-size:11px}.xrp-rows dt{color:#7c8581;font-size:10px}.xrp-rows dd{margin:0;display:flex;gap:8px;align-items:center;overflow-wrap:anywhere}.xrp-rows button{font-size:10px;padding:3px 8px}.xrp-note,.xrp-state,.xrp-expiry{font-size:11px;margin:0;color:#5a4a22;text-align:center}
.ride-pad .ride-jump{background:#e6f1d8}.ride-pad button[hidden]{display:none}
.rank-section{margin:14px 0 4px}.rank-section h3{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#7c8581;margin:0 0 4px}.rank-list{list-style:none;margin:0;padding:0}.rank-list li{border-bottom:1px solid #e6e8e2}.rank-letter img{width:100%;height:100%;object-fit:contain;border-radius:50%}.love-remaining{display:block;margin-top:8px;color:#8a6a6a;font-size:10px;line-height:1.5}.deed-link{display:inline-block;margin:10px 0 0;font-size:12px;color:#6b4f1a}
.deed-note{display:block;font-size:10px;color:#8a6a1a;line-height:1.5}
#ride-fade{position:fixed;inset:0;z-index:7;pointer-events:none;background:radial-gradient(circle,#0b1520 0,#0b1520 60%,#000 100%);opacity:0;transition:opacity .22s}body[data-ride-fade='1'] #ride-fade{opacity:.78}
@media(min-width:801px){.ride-hud>div:first-child{min-width:170px;max-width:250px}}

/* v38: quiet, always-available legal links; keep clear of map controls. */
.legal-links{display:inline-flex;flex-wrap:wrap;gap:4px 14px}.legal-links a{color:inherit;text-underline-offset:3px}
.town-legal{position:fixed;bottom:0;left:0;z-index:12;padding:0 10px max(0px,env(safe-area-inset-bottom));background:#101e1aeb;color:#e4eee9;border-radius:0 6px 0 0;font-size:11px}
.town-legal a{display:inline-flex;align-items:center;min-height:28px}.town-legal a:focus-visible{outline:2px solid #f8c51c;outline-offset:2px}
.purchase-terms{line-height:1.6}.purchase-terms a{color:inherit;text-underline-offset:3px}
.bottom-note{bottom:40px}
@media(max-width:540px){.town-legal a{min-height:32px}.town-legal{font-size:10px}.town-legal .legal-links{gap:4px 12px}.controls{bottom:calc(50px + env(safe-area-inset-bottom))}#hint{bottom:calc(108px + env(safe-area-inset-bottom))}.bottom-note{bottom:calc(148px + env(safe-area-inset-bottom))}.ride-hud{bottom:calc(112px + env(safe-area-inset-bottom))}}

/* v39: the first screen of a listing is for visiting or buying. */
#place .place-heading{margin-bottom:12px}#place .place-heading h2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.place-buy{display:grid;gap:8px;margin:8px 0 16px}.place-buy>button{width:100%;margin:0!important;min-height:44px}.garden-explanation{font-size:12px;line-height:1.45;margin:0;color:#53616b}.free-claim-link{border:0;background:transparent;color:#214b3b;text-decoration:underline;text-underline-offset:3px;font-weight:bold;cursor:pointer}.free-claim-link:focus-visible{outline:2px solid #214b3b;outline-offset:2px}.purchase-details{font-size:12px}.purchase-details .price-line{font-size:13px}#place .example-notice{margin-top:14px;line-height:1.5}
#free-claim-form>label{display:block;font-weight:bold;font-size:12px;margin:14px 0 6px}#free-claim-form>input{display:block;width:100%;min-height:44px;margin:0 0 12px}#free-claim-status{font-size:13px;line-height:1.5}.invite-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:540px){#place{padding:18px;max-height:calc(100dvh - 24px)}#place .place-heading{margin:-18px -18px 10px;padding:18px;padding-right:42px}#place .place-heading h2{font-size:20px;line-height:1.15}#place .place-category{font-size:9px}#place .place-buy{gap:6px;margin-bottom:12px}.garden-explanation{font-size:11px}.free-claim-link{font-size:12px}}

/* v40: paired action cards and a distinct owner panel, from the supplied reference. */
.purchase-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.purchase-options:has(>button:only-child){grid-template-columns:1fr}.purchase-options .purchase-option{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-width:0;min-height:116px;width:100%;margin:0!important;padding:15px 14px;border:0;border-bottom:4px solid #ead5d0;border-radius:13px;background:#fbf1ef;color:#9e3626;text-align:left;cursor:pointer;line-height:1.3;white-space:normal}.purchase-option:hover{background:#f8e7e2}.purchase-option:focus-visible{outline:2px solid currentColor;outline-offset:3px}.action-label{font-size:11px;font-weight:bold;text-transform:uppercase;letter-spacing:.04em}.action-price{font-size:30px;line-height:1.05}.action-explanation{font-size:11px;color:#76564f}.purchase-options .garden-option{background:#f1f0e8;color:#526440;border-bottom-color:#d8ddcc}.garden-option:hover{background:#e8ecdd}.garden-option .action-explanation{color:#526440}.place-buy .garden-explanation{margin:2px 0 4px}.place-buy .free-claim-link{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:88px;padding:14px 16px!important;background:#e4f2e7;border:0;border-bottom:4px solid #c9dfcd;border-radius:13px;text-decoration:none;text-align:left;line-height:1.4;color:#315d40}.free-claim-link strong{font-size:14px}.free-claim-link span{font-size:12px;font-weight:normal;color:#486c52}.free-claim-link:hover{background:#d9eedf}@media(max-width:540px){.purchase-options{gap:8px}.purchase-options .purchase-option{min-height:106px;padding:12px}.action-price{font-size:28px}.action-label{font-size:10px}.place-buy .free-claim-link{padding:12px!important;min-height:82px}.free-claim-link strong{font-size:13px}.free-claim-link span{font-size:11px}}

/* v41: views, outbound clicks and the live Love Tap control above Visit. */
#place-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:6px;margin:6px 0 4px;padding:0;white-space:normal;color:#202228}.place-metric{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:56px;border-right:1px solid #e1e1dc}.metric-number{font-size:26px;line-height:1.1;overflow-wrap:anywhere}.metric-label{font-size:10px;font-weight:bold;text-transform:uppercase;letter-spacing:.08em}.place-metric .metric-label{color:#6c706c}#place-love.love-metric{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:72px;width:100%;padding:9px 6px;border:0;border-bottom:4px solid #efc5cd;border-radius:12px;background:#fbe5e9;color:#b51738;cursor:pointer}#place-love.love-metric:hover{background:#f8d8df}#place-love.love-metric:focus-visible{outline:2px solid #b51738;outline-offset:3px}#place-love.love-metric:disabled{cursor:default;opacity:.65}#place .love-remaining{display:block;margin:2px 0 10px;font-size:10px;line-height:1.3;text-align:right;min-height:0}#place .love-remaining:empty{display:none}@media(max-width:540px){#place-stats{gap:4px}.metric-number{font-size:24px}.metric-label{font-size:9px}#place-love.love-metric{min-height:64px}}
