*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}#app{min-height:100vh;display:flex;flex-direction:column}.app-container{display:flex;flex-direction:column;min-height:100vh}.map{width:100%;height:600px;position:relative;display:block!important;visibility:visible!important;opacity:1!important}@media (max-width: 1024px){.map{height:500px}}@media (max-width: 768px){.map{height:400px}}@media (max-width: 480px){.map{height:350px}}.custom-info-window{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding:0;min-width:280px;max-width:100%}.info-header{background:linear-gradient(135deg,#ff6b35,#f7931e);padding:16px;margin:-8px -8px 0;border-radius:8px 8px 0 0}.info-title{margin:0;color:#fff;font-size:18px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.2);word-wrap:break-word}.info-body{padding:16px 8px 8px;background:#fff}.info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 8px;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease;gap:8px}.info-row:last-child{border-bottom:none}.info-row:hover{background-color:#fff5f0;border-radius:4px}.info-label{font-weight:600;color:#495057;font-size:14px;flex-shrink:0}.info-value{color:#6c757d;font-size:14px;text-align:right;flex-grow:1;word-wrap:break-word}@media (max-width: 480px){.custom-info-window{min-width:240px}.info-title{font-size:16px}.info-label,.info-value{font-size:12px}.info-row{padding:8px 6px}}.gm-style .gm-style-iw-c{padding:0!important;border-radius:12px!important;box-shadow:0 8px 24px #ff6b3533!important;max-width:90vw!important}.gm-style .gm-style-iw-d{overflow:hidden!important}.gm-style .gm-style-iw-tc:after{background:linear-gradient(135deg,#ff6b35,#f7931e)}.gm-style-iw{padding:0!important}.gm-style .gm-ui-hover-effect{display:none!important}.sites-table-container{padding:20px;background:#fff;max-width:1400px;margin:0 auto;width:100%}.filters-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:20px;align-items:end}.filter-group{display:flex;flex-direction:column}.filter-group label{font-weight:600;margin-bottom:8px;color:#333;font-size:14px}.search-group{grid-column:1 / -1}.download-btn{padding:12px 24px;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;font-size:14px;width:100%;max-width:250px}.download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff6b3566}.download-btn:active{transform:translateY(0);box-shadow:0 2px 6px #ff6b3566}.table-wrapper{overflow-x:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;-webkit-overflow-scrolling:touch}.sites-table{width:100%;border-collapse:collapse;background:#fff;min-width:600px}.sites-table thead{background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;position:sticky;top:0;z-index:10}.sites-table th{padding:15px 12px;text-align:left;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.sites-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s ease}.sites-table tbody tr:hover{background-color:#fff5f0}.sites-table tbody tr:nth-child(2n){background-color:#fafafa}.sites-table tbody tr:nth-child(2n):hover{background-color:#fff5f0}.sites-table td{padding:12px;font-size:14px;color:#333}.no-results{text-align:center;padding:40px 20px;color:#999;font-size:16px}@media (max-width: 1024px){.sites-table-container{padding:16px}.filters-section{grid-template-columns:repeat(2,1fr);gap:12px}.search-group{grid-column:1 / -1}.download-btn{grid-column:1 / -1;max-width:100%}.sites-table th,.sites-table td{padding:10px;font-size:13px}}@media (max-width: 768px){.sites-table-container{padding:12px}.filters-section{grid-template-columns:1fr;gap:12px}.filter-group,.search-group{width:100%}.filter-group label{font-size:13px;margin-bottom:6px}.filter-group select,.filter-group input{padding:10px;font-size:14px}.download-btn{padding:12px;font-size:14px;width:100%;max-width:100%}.hide-mobile{display:none}.sites-table{font-size:11px;min-width:100%}.sites-table th,.sites-table td{padding:8px 4px;font-size:9px;word-wrap:break-word;max-width:120px}.sites-table th{font-size:9px}.no-results{padding:30px 15px;font-size:14px}}@media (max-width: 480px){.sites-table-container{padding:8px}.filter-group select,.filter-group input{padding:10px 8px;font-size:14px}.download-btn{padding:12px;font-size:13px}.sites-table{min-width:100%;font-size:10px}.sites-table th,.sites-table td{padding:6px 3px;font-size:10px;word-wrap:break-word;max-width:100px}.sites-table th{font-size:10px;padding:10px 4px}}@media (max-width: 360px){.sites-table{font-size:9px}.sites-table th,.sites-table td{padding:5px 2px;font-size:9px;max-width:90px}.sites-table th{font-size:8px;padding:7px 2px}}@media (max-height: 500px) and (orientation: landscape){.map{height:300px}.sites-table-container{padding:12px}}@media (hover: none) and (pointer: coarse){.filter-group select,.filter-group input,.download-btn,.sites-table td,.sites-table th{min-height:44px}}.filter-group select,.filter-group input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;transition:all .3s ease;width:100%}.filter-group select:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;opacity:.6}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.filter-group select:disabled:focus{border-color:#ddd;box-shadow:none}.results-count{padding:12px 16px;background:linear-gradient(135deg,#fff5f0,#ffe8dc);border-left:4px solid #ff6b35;border-radius:4px;margin-bottom:16px;font-weight:600;color:#333;font-size:14px}.highlighted-row{background-color:#fff5f0!important;border-left:4px solid #ff6b35;animation:highlight .5s ease}@keyframes highlight{0%{background-color:#ffedd5}to{background-color:#fff5f0}}.tag-close{cursor:pointer;font-weight:700}@media (max-width: 768px){.hide-mobile{display:none}.sites-table{min-width:100%}.sites-table th,.sites-table td{padding:8px 4px;font-size:11px;word-wrap:break-word}.sites-table th{font-size:10px}}@media (max-width: 480px){.sites-table{min-width:100%}.sites-table th,.sites-table td{padding:6px 3px;font-size:10px;word-wrap:break-word}.sites-table th{font-size:9px;padding:8px 3px}}
