:host { display: block; button{ background: white; border: 1px solid rgba(0,0,0,0.06); border-radius: 10px; padding: 10px; cursor: pointer; &:hover{ background-color: #f0f0f0; } + button{ margin-left: 10px; margin-bottom: 10px; } } } .layout { display: grid; grid-template-columns: 400px 1fr; grid-template-rows: 100vh; gap: 0; } .aside { background: #ffffff; border-right: 1px solid rgba(0,0,0,0.06); box-shadow: 2px 0 12px rgba(0,0,0,0.03); padding: 16px; padding-bottom: 150px; overflow: auto; } .main { display: flex; flex-direction: column; height: 100vh; overflow: hidden; } .toolbar { display: flex; align-items: center; justify-content: space-between; padding: 8px 12px; .loading { color: #007bff; font-size: 12px; } } .controls { margin: 15px 0; padding: 15px; background: #f8f9fa; border-radius: 6px; border: 1px solid #e9ecef; .control-group { margin-bottom: 12px; &:last-child { margin-bottom: 0; } label { display: block; font-size: 12px; font-weight: 600; color: #495057; margin-bottom: 4px; input[type="checkbox"] { margin-right: 6px; } } input[type="number"] { width: 100%; padding: 6px 8px; border: 1px solid #ced4da; border-radius: 4px; font-size: 14px; &:focus { outline: none; border-color: #007bff; box-shadow: 0 0 0 2px rgba(0,123,255,0.25); } } .btn { width: 100%; padding: 8px 12px; background: #6c757d; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 12px; transition: background-color 0.2s; &:hover { background: #5a6268; } } } } .map { flex: 1 1 auto; min-height: 0; } .presets{ position: fixed; top: 63px; margin-left: 397px; width: 50vw; max-height: 80vh; display: block; } app-edit-form{ position: fixed; top: 135px; margin-left: 397px; width: 40vw; max-height: 77.7vh; display: block; overflow: auto; background: rgba(228, 235, 255, 0.5); border: 1px solid rgba(0,0,0,0.06); border-radius: 10px; padding: 10px; box-shadow: 0 0 10px rgba(0,0,0,0.1); z-index: 1000; padding-bottom: 150px; }