.loc-picker{margin-top:8px}.loc-search-row{position:relative;display:flex;gap:6px;margin-bottom:8px}.loc-search-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:var(--border-radius);font-size:.9rem;outline:none}.loc-search-input:focus{border-color:var(--primary)}.loc-search-btn{padding:8px 14px;border:1px solid #ddd;border-radius:var(--border-radius);background:var(--bg-white);color:var(--text-muted);cursor:pointer;flex-shrink:0}.loc-search-btn:active{background:#f0f0f0}.loc-suggestions{display:none;position:absolute;top:100%;left:0;right:0;z-index:1000;background:var(--bg-white);border:1px solid #ddd;border-radius:var(--border-radius);margin-top:2px;padding:0;list-style:none;max-height:200px;overflow-y:auto;box-shadow:0 4px 12px rgba(0, 0, 0, 0.12)}.loc-sug-item{padding:10px 12px;font-size:.85rem;cursor:pointer;border-bottom:1px solid #f0f0f0;line-height:1.4}.loc-sug-item:last-child{border-bottom:none}.loc-sug-item:active{background:#f5f5f5}.loc-sug-empty{padding:10px 12px;font-size:.85rem;color:var(--text-muted)}.loc-map{width:100%;height:220px;border-radius:var(--border-radius);border:none;z-index:0}.loc-addr-row{margin-top:6px;font-size:.82rem;color:var(--text-muted);line-height:1.4;word-break:break-all}.loc-addr-row i{color:var(--primary)}.loc-back-btn{display:none;padding:8px 10px;border:1px solid #ddd;border-radius:var(--border-radius);background:var(--bg-white);color:var(--text-primary);cursor:pointer;flex-shrink:0;font-size:1rem;line-height:1}.loc-back-btn:active{background:#f0f0f0}.loc-confirm-btn{display:none;margin-left:auto;flex-shrink:0;padding:6px 16px;border:none;border-radius:var(--border-radius);background:#ccc;color:#fff;font-size:.85rem;font-weight:600;cursor:not-allowed;pointer-events:none}.loc-confirm-btn.loc-confirm-active{background:var(--primary);cursor:pointer;pointer-events:auto}.loc-confirm-btn.loc-confirm-active:active{opacity:.85}.loc-clear-btn{padding:8px 10px;border:1px solid #ddd;border-radius:var(--border-radius);background:var(--bg-white);color:var(--text-muted);cursor:pointer;flex-shrink:0;font-size:.85rem;line-height:1}.loc-clear-btn:active{background:#f0f0f0}.loc-picker-readonly .loc-map{height:180px}.loc-fullscreen-btn{position:absolute;top:10px;right:10px;z-index:1000;width:34px;height:34px;border:none;border-radius:var(--border-radius);background:var(--bg-white);box-shadow:0 1px 4px rgba(0, 0, 0, 0.2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#333}.loc-fullscreen-btn:active{background:#f0f0f0}.loc-geo-btn{position:absolute;bottom:20px;right:10px;z-index:1000;width:34px;height:34px;border:none;border-radius:var(--border-radius);background:var(--bg-white);box-shadow:0 1px 4px rgba(0, 0, 0, 0.2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#333}.loc-geo-btn:active{background:#f0f0f0}.loc-geo-loading i{animation:loc-spin .8s linear infinite}@keyframes loc-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.loc-geo-tip{position:absolute;bottom:60px;right:10px;z-index:1000;background:rgba(0, 0, 0, 0.7);color:#fff;padding:6px 12px;border-radius:var(--border-radius);font-size:.8rem;white-space:nowrap;pointer-events:none}.loc-picker-fs{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:var(--bg-white);display:flex;flex-direction:column;padding:0 0 env(safe-area-inset-bottom, 0);margin:0;border-radius:0}.loc-picker-fs .loc-search-row{padding:12px 12px 0;flex-shrink:0}.loc-picker-fs .loc-map{flex:1;height:auto;border-radius:0;border:none}.loc-picker-fs .loc-addr-row{padding:8px 12px;flex-shrink:0;border-top:1px solid #eee;display:flex;align-items:center;gap:6px}.loc-picker-fs .loc-addr-row .loc-addr-text{flex:1;min-width:0}.loc-picker-fs .loc-back-btn{display:flex;align-items:center;justify-content:center}.loc-picker-fs .loc-confirm-btn{display:block}.loc-picker-fs .loc-fullscreen-btn{top:auto;bottom:60px;right:12px}.loc-picker-fs .loc-geo-btn{bottom:100px;right:12px}@media(hover: hover){.loc-sug-item:hover{background:#f5f5f5}}
