*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0f;color:#e0e0e0}#root{min-height:100vh}.daylight-viz{max-width:1400px;width:100%;margin:0 auto}.header{text-align:center;margin-bottom:2rem}.header h1{font-size:2.5rem;font-weight:300;background:linear-gradient(135deg,gold,orange);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.subtitle{color:#999;font-size:1rem;margin-top:.5rem}.search-section{margin-bottom:2rem;display:flex;justify-content:center}.search-container{position:relative;width:100%;max-width:600px}.search-input{width:100%;padding:.75rem 1rem;font-size:1rem;background:#1a1a2e;border:2px solid #2a2a3e;border-radius:8px;color:#e0e0e0;outline:none;transition:border-color .2s}.search-input:focus{border-color:gold}.search-input::placeholder{color:#666}.search-loading{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#999;font-size:.875rem}.suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#1a1a2e;border:2px solid #2a2a3e;border-top:none;border-radius:0 0 8px 8px;margin-top:-2px;max-height:300px;overflow-y:auto;z-index:10;box-shadow:0 4px 20px #00000080}.suggestion-item{padding:.75rem 1rem;cursor:pointer;transition:background-color .2s;color:#e0e0e0;border-bottom:1px solid #2a2a3e}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background-color:#2a2a3e}.locations-list{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;justify-content:center}.location-chip{background:linear-gradient(135deg,#1a1a2e,#16162a);border-radius:8px;padding:.75rem 1rem;display:flex;align-items:center;gap:1rem;border:1px solid #2a2a3e;min-width:250px}.location-info{flex:1}.location-name{font-size:1rem;color:#e0e0e0;font-weight:500}.location-coords{font-size:.75rem;color:#666;margin-top:.25rem}.remove-btn{background:none;border:none;color:#999;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.remove-btn:hover{background:#ff6b6b;color:#fff}.coords{font-size:.875rem;color:#666}.canvas-container{display:flex;justify-content:center;margin-bottom:2rem;background:#0f0f1e;border-radius:12px;padding:1rem;box-shadow:0 10px 40px #00000080}canvas{cursor:crosshair;border-radius:8px}.info-panel{background:linear-gradient(135deg,#1a1a2e,#16162a);border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid #2a2a3e;box-shadow:0 4px 20px #0000004d}.info-panel h3{font-size:1.5rem;font-weight:400;margin-bottom:1rem;color:gold}.location-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.location-data-card{background:#ffffff05;border-radius:8px;padding:1rem}.location-data-name{font-size:.875rem;font-weight:500;color:#e0e0e0;margin-bottom:.75rem}.location-data-details{display:flex;flex-direction:column;gap:.5rem}.data-row{display:flex;justify-content:space-between;align-items:center}.data-row .label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.data-row .value{font-size:.875rem;font-weight:500;color:#e0e0e0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item .label{font-size:.875rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.info-item .value{font-size:1.25rem;font-weight:500;color:#e0e0e0}.legend{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#999}.marker{width:12px;height:12px;border-radius:50%;box-shadow:0 0 10px currentColor}@media(max-width:768px){.header h1{font-size:2rem}.search-container{max-width:100%}.locations-list{flex-direction:column}.location-chip{min-width:100%}canvas{width:100%!important;height:auto!important}.info-grid,.location-data-grid{grid-template-columns:1fr}.legend{gap:1rem}}
