:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;--bg-primary: #ffffff;--bg-secondary: #f9f9f9;--bg-tertiary: #f5f5f5;--bg-hover: #f3f4f6;--bg-disabled: #f5f5f5;--bg-overlay: rgba(0, 0, 0, .5);--bg-dialog: #ffffff;--bg-input: #ffffff;--bg-input-disabled: #f5f5f5;--bg-row-even: #ffffff;--bg-row-odd: #f9fafb;--bg-error-light: #fee2e2;--bg-error-hover: #fecaca;--bg-success-light: #d1fae5;--bg-selected: #f0f4ff;--text-primary: #213547;--text-secondary: #64748b;--text-tertiary: #888;--text-disabled: #999;--text-on-dark: rgba(255, 255, 255, .87);--border-color: #e5e7eb;--border-color-light: rgba(0, 0, 0, .12);--border-color-dark: #ccc;--link-color: #646cff;--link-hover: #535bf2;--shadow-sm: 0 2px 6px rgba(0,0,0,.12);--shadow-md: 0 2px 8px rgba(0,0,0,.2);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme: dark){:root{--bg-primary: #242424;--bg-secondary: #1a1a1a;--bg-tertiary: #2a2a2a;--bg-hover: #333333;--bg-disabled: #2a2a2a;--bg-overlay: rgba(0, 0, 0, .7);--bg-dialog: #2a2a2a;--bg-input: #1a1a1a;--bg-input-disabled: #2a2a2a;--bg-row-even: #2a2a2a;--bg-row-odd: #242424;--bg-error-light: #4a1f1f;--bg-error-hover: #5a2f2f;--bg-success-light: #1a3a2a;--bg-selected: #2a2f4a;--text-primary: rgba(255, 255, 255, .87);--text-secondary: rgba(255, 255, 255, .6);--text-tertiary: rgba(255, 255, 255, .5);--text-disabled: rgba(255, 255, 255, .4);--text-on-dark: rgba(255, 255, 255, .87);--border-color: #404040;--border-color-light: rgba(255, 255, 255, .12);--border-color-dark: #555555;--link-color: #646cff;--link-hover: #747bff;--shadow-sm: 0 2px 6px rgba(0,0,0,.3);--shadow-md: 0 2px 8px rgba(0,0,0,.4);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .3), 0 10px 10px -5px rgba(0, 0, 0, .2);color:var(--text-primary);background-color:var(--bg-primary)}}a{font-weight:500;color:var(--link-color);text-decoration:inherit}a:hover{color:var(--link-hover)}html{color:var(--text-primary);background-color:var(--bg-primary)}body{margin:0;min-width:320px;min-height:100vh;color:var(--text-primary);background-color:var(--bg-primary)}h1{font-size:3.2em;line-height:1.1}#app{height:100vh;width:100%;margin:0;padding:0;color:var(--text-primary);background-color:var(--bg-primary)}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.custom-cluster-icon{background:transparent!important;border:none!important}.marker-cluster{background-clip:padding-box;border-radius:50%}.marker-cluster div{width:100%!important;height:100%!important;margin:0!important;text-align:center;border-radius:50%;font-weight:600;display:flex;align-items:center;justify-content:center}.logo.vanilla:hover{filter:drop-shadow(0 0 2em #3178c6aa)}.card{padding:2em}.read-the-docs{color:var(--text-tertiary)}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--link-color)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.leaflet-tooltip.dw-label{background-color:var(--bg-dialog);color:var(--text-primary);border:1px solid var(--border-color-light);border-radius:10px;box-shadow:var(--shadow-sm);padding:4px 8px}.leaflet-tooltip.dw-label:before{border-top-color:var(--bg-dialog)}@media (prefers-color-scheme: dark){.leaflet-tooltip.dw-label{background-color:#2a2a2af2;color:#ffffffde;border-color:#ffffff1f}.leaflet-tooltip.dw-label:before{border-top-color:#2a2a2af2}}.app-header{display:flex!important;align-items:center!important;flex-wrap:wrap!important;row-gap:8px!important}.app-header-brand{flex-shrink:0!important}.app-nav,.app-user-menu{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;row-gap:4px!important}.cellar-menu-container,.admin-menu-container,.help-menu-container{position:relative!important}.cellar-menu-container>div,.admin-menu-container>div,.help-menu-container>div{position:absolute!important;z-index:1001!important}.app-nav button,.app-nav a,.app-user-menu button,.app-user-menu a{white-space:nowrap!important;flex-shrink:0!important}.app-nav button,.app-user-menu button{border:none!important}.app-nav a,.app-user-menu a{border:none!important;text-decoration:none!important}.map-sidebar input,.map-sidebar select,.map-sidebar textarea{background-color:var(--bg-input)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}.map-sidebar input:disabled,.map-sidebar select:disabled,.map-sidebar textarea:disabled{background-color:var(--bg-input-disabled)!important;color:var(--text-disabled)!important}@media (max-width: 1200px) and (min-width: 1025px){.app-nav,.app-user-menu{gap:4px!important}.ai-trip-button,.add-location-button{font-size:12px!important;padding:6px 10px!important}}@media (max-width: 1024px){.app-header{padding:10px 12px!important;gap:8px!important}.app-title{font-size:16px!important}.app-logo{height:40px!important}.app-nav,.app-user-menu{gap:4px!important;flex-wrap:wrap!important}.header-btn{font-size:11px!important;padding:5px 10px!important}.ai-trip-button,.add-location-button{font-size:12px!important;padding:6px 10px!important}.map-sidebar{width:320px!important;padding:12px!important}.business-details-panel{width:320px!important;padding:10px!important}}@media (max-width: 768px){.app-header{padding:8px 12px!important;gap:8px!important;flex-direction:row!important;align-items:center!important;min-height:56px!important}.app-header-brand{flex:0 0 auto!important}.app-title{font-size:15px!important}.app-logo{height:40px!important}.welcome-text,.subscription-text{display:none!important}.header-btn{font-size:12px!important;padding:6px 10px!important;min-height:36px!important;border-radius:6px!important;background:#fff3!important;color:#fff!important;border:1px solid rgba(255,255,255,.3)!important;font-weight:500!important}.app-nav{width:100%!important;order:3!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap!important;margin-top:8px!important}.app-user-menu{order:2!important;margin-left:auto!important;gap:6px!important;flex-wrap:nowrap!important}.ai-trip-button,.add-location-button{font-size:11px!important;padding:6px 9px!important}.cellar-menu-container,.admin-menu-container,.help-menu-container{position:relative!important}.header-btn,.app-nav a,.app-nav button,.app-user-menu a,.app-user-menu button{min-height:36px!important;touch-action:manipulation!important}.app-header-brand button{min-height:36px!important;min-width:44px!important;padding:8px 12px!important}.map-sidebar{position:fixed!important;left:0!important;top:60px!important;width:100%!important;height:calc(100vh - 60px)!important;z-index:900!important;padding:10px!important;box-shadow:2px 0 10px #0000004d!important}.business-details-panel{position:fixed!important;right:0!important;top:60px!important;width:100%!important;height:calc(100vh - 60px)!important;z-index:950!important;padding:10px!important;box-shadow:-2px 0 10px #0000004d!important}.map-page-container{flex-direction:column!important}}@media (max-width: 480px){.app-header{padding:6px 10px!important;gap:6px!important;flex-direction:row!important;align-items:center!important;min-height:52px!important}.app-header-brand{flex:0 0 auto!important;min-width:0!important}.app-title{font-size:14px!important;display:none}.app-logo{height:36px!important;margin-right:0!important}.app-nav{order:3!important;width:100%!important;flex-wrap:wrap!important;gap:4px!important;margin-top:6px!important;justify-content:flex-start!important}.app-user-menu{order:2!important;margin-left:auto!important;gap:6px!important;flex-wrap:nowrap!important}.header-btn{font-size:12px!important;padding:6px 10px!important;min-height:36px!important;border-radius:6px!important;background:#fff3!important;color:#fff!important;border:1px solid rgba(255,255,255,.3)!important;font-weight:500!important}.ai-trip-button,.add-location-button{font-size:11px!important;padding:6px 8px!important}.header-btn,.app-nav a,.app-nav button,.app-user-menu a,.app-user-menu button{min-height:36px!important;min-width:44px!important;touch-action:manipulation!important}.app-nav .header-btn:nth-child(n+4){font-size:11px!important}.app-header-brand button{min-height:36px!important;min-width:44px!important;padding:8px 10px!important;font-size:20px!important;background:#ffffff40!important;border:1px solid rgba(255,255,255,.4)!important}.app-nav a,.app-nav button,.app-user-menu a,.app-user-menu button{font-size:12px!important;padding:6px 10px!important}.map-sidebar,.business-details-panel{font-size:11px!important}.map-page-container{height:calc(100vh - 60px)!important}}@media (max-width: 320px){.app-header{padding:4px 6px!important}.app-logo{height:28px!important}.app-nav,.app-user-menu{flex-direction:column!important;width:100%!important;align-items:stretch!important}.header-btn,.app-nav a,.app-nav button{width:100%!important;text-align:center!important}}@media (hover: none) and (pointer: coarse){button,a,input[type=checkbox],input[type=radio],select{min-height:44px;min-width:44px}.header-btn{padding:8px 12px!important}.header-btn:active{background:#ffffff4d!important;transform:scale(.98);transition:transform .1s,background .1s}.app-nav a:active,.app-nav button:active,.app-user-menu a:active,.app-user-menu button:active{opacity:.8;transform:scale(.98);transition:transform .1s,opacity .1s}}@media (max-width: 768px){.disclaimer-page{padding:16px 12px!important}.disclaimer-page-header h1{font-size:24px!important;margin-bottom:8px!important}.disclaimer-page-header p{font-size:14px!important}.disclaimer-page-header{margin-bottom:24px!important}.disclaimer-page-body{padding:16px 14px!important}.disclaimer-page-content{font-size:12px!important;line-height:1.45!important}.disclaimer-page-content h2{font-size:16px!important;margin-bottom:12px!important}.disclaimer-page-content h3{font-size:14px!important;margin-top:16px!important;margin-bottom:8px!important}.disclaimer-page-content p{margin-bottom:10px!important}}@media (max-width: 480px){.disclaimer-page{padding:12px 10px!important}.disclaimer-page-header h1{font-size:20px!important}.disclaimer-page-header p{font-size:13px!important}.disclaimer-page-header{margin-bottom:16px!important}.disclaimer-page-body{padding:12px 10px!important}.disclaimer-page-content{font-size:11px!important;line-height:1.4!important}.disclaimer-page-content h2{font-size:14px!important;margin-bottom:10px!important}.disclaimer-page-content h3{font-size:13px!important;margin-top:12px!important;margin-bottom:6px!important}.disclaimer-page-content p{margin-bottom:8px!important}}@media (max-width: 768px){.disclaimer-overlay{padding:0!important;align-items:flex-start!important}.disclaimer-dialog{width:100%!important;max-width:100%!important;min-height:auto!important;height:auto!important;max-height:100vh!important;border-radius:0!important;margin:0!important}.disclaimer-content{padding:10px 12px!important;margin:8px!important;max-height:none!important;flex:0 1 auto!important;font-size:12px!important}.disclaimer-content h2{font-size:14px!important;margin-bottom:8px!important}.disclaimer-content p{font-size:11px!important;line-height:1.35!important;margin-bottom:6px!important}.disclaimer-content .disclaimer-warning{font-size:10px!important;padding:5px 8px!important;margin-bottom:8px!important}.disclaimer-footer{padding:12px 16px!important;text-align:center!important;position:sticky!important;bottom:0!important;background-color:var(--bg-tertiary)!important}.disclaimer-accept-button{width:100%!important;min-width:100%!important;padding:14px 28px!important;font-size:18px!important;min-height:48px!important;box-shadow:0 2px 8px #0003!important}}@media (max-width: 480px){.disclaimer-content{padding:8px 10px!important;margin:6px!important;font-size:11px!important}.disclaimer-content h2{font-size:13px!important;margin-bottom:6px!important}.disclaimer-content p{font-size:10px!important;line-height:1.25!important;margin-bottom:5px!important}.disclaimer-content .disclaimer-warning{font-size:9px!important;padding:4px 6px!important;margin-bottom:6px!important}.disclaimer-footer{padding:10px 12px!important}.disclaimer-accept-button{padding:12px 24px!important;font-size:16px!important;min-height:44px!important}}footer a,footer div{display:none!important}@keyframes subtle-pulse{0%,to{opacity:1}50%{opacity:.9}}
